【Dataset】Goodbooks-10k: 图书推荐数据
当前推荐领域一些公开的据集都是关于电影和音乐的(比如Netflix、Movielens等),没有关于图书推荐的数据。本文将要介绍的就是一份用于图书推荐的数据集,该数据来源于goodreads网站,包含1万本最受欢迎图书的6百万评分数据,由以下数据组成:
- 评分数据
- 被用户标记为想读的图书
- 图书详情(作者、年份等)
- 图书标签
ratings.csv
包含按时间存储的评分数据,大小为69MB,结构如下:
user_id,book_id,rating
1,258,5
2,4081,4
2,260,5
2,9296,5
2,2318,3
评分范围1-5;图书ID是1-10000的连续数字;用户ID是1-53424的连续数字。
to_read.csv
被用户标记为想读的数据,有将近1百万条按照时间存储的user_id、book_id对。
books.csv
从goodreads的XML文件中抽取出来的每本书的详情(goodreads ID、作者、书名、平均分等),XML源文件保存在books_xml目录下。
books_tags.csv
用户分配给图书的标签,通过ID表示;按照goodreads_book_id升序、count降序存储,其中count表示有多少用户为该图书标记该标签。
goodreads_book_id,tag_id,count
1,30574,167697
1,11305,37174
1,11557,34173
tags.csv
标签ID对应的标签名。
tag_id,tag_name
0,-
19,--your-message-here--
25,-fiction
26,-fictional
27,-fictitious
关于图书ID
一本书可能有很多版本,goodreads_book_id和best_book_id通常是指最受欢迎的版本。而goodreads中的work_id指的是抽象意义的书,通过该ID会列出该书的所有版本。ratings.csv和to_read.csv中的book_id指的是work_id而不是goodreads_book_id,这意味着不同版本的评分是经过聚合处理的。
【Dataset】Goodbooks-10k: 图书推荐数据的更多相关文章
- 微信小程序--每周图书推荐
这是我个人的第一个原生微信小程序,作为一枚萌新,自己没有前端经历,所以代码很混乱,界面很简单,难度也很低,主要用来记录自己学小程序过程中遇到的问题. 一. 先上预览图 左右滑动切换每周推荐的图书,点击 ...
- 100本最棒的web前端图书推荐
前端技术,要学习的内容太多了,当你不知道从哪里开始的时候,你就先从看书开始,边看书边码代码,这个是学习编程必须的过程,因为你看一百遍,还不如自己写一遍,写一遍,第一可以加印象,第二便于更好的理解. 熟 ...
- [置顶] 图书推荐:SQL Server 2012 T-SQL基础 Itzik Ben-Gan
经过近三个月的不懈努力,终于翻译完毕了.图书虽然是基础知识,但是,即使你已经使用T-SQL几年,很多地方还是能够弥补你的知识空白.大师级的人物写基础知识,或许你想知道这基础中还有哪些深奥,敬请期待吧. ...
- 基于hadoop的图书推荐
根据在炼数成金上的学习,将部分代码总结一下在需要的时候可以多加温习.首先根据原理作简要分析.一般推荐系统使用的协同过滤推荐模型:分别是基于ItemCF的推荐模型或者是基于UserCF的推荐模型:首先分 ...
- DefaultView 的作用(对DataSet查询出的来数据进行排序)
DefaultView 的作用 收藏 一直以来在对数据进行排序, 条件查询都是直接重复构建SQL来进行, 在查询次数和数据量不多的情况下倒没觉得什么, 但慢慢得, 当程序需要对大量数据椐不同条件 ...
- 关于 C# DataSet.ReadXml 无法获取Xml数据的问题解析
首先这次遇到问题的是,C# Winform 项目中新建的数据集 IDE 是 VS2013 调用如下: private void Form1_Load(object sender, EventArgs ...
- Visual Basic相关图书推荐
Visual Basic从入门到精通(第2版) 作 者 国家863中部软件孵化器 编 出 版 社 人民邮电出版社 出版时间 2015-03-01 版 次 2 页 数 61 ...
- PASCAL相关图书推荐
PASCAL程序设计(第2版) 作 者 郑启华 著 出 版 社 清华大学出版社 出版时间 2013-01-01 版 次 2 页 数 286 印刷时间 2013-01-01 ...
- Go语言相关图书推荐
Go语言编程 作 者 许式伟 等 著 出 版 社 人民邮电出版社 出版时间 2012-08-01 版 次 1 页 数 245 印刷时间 2012-08-01 开 ...
随机推荐
- 【题解】洛谷P1350 车的放置(矩阵公式推导)
洛谷P1350:https://www.luogu.org/problemnew/show/P1350 思路 把矩阵分为上下两块N与M 放在N中的有i辆车 则放在M中有k-i辆车 N的长为a 宽为 ...
- jquery 跨域获取网页数据
<script language="javascript" src="http://cbsahhs.blog.163.com/jquery.min.js" ...
- wordpress建设的企业网站
wordpress企业站 http://ahlajd.demo.phpfangzhan.com 后台焦点图实现:
- javascript 中数组的创建 添加 与将数组转换成字符串 页面三种提交请求的方式
创建js数组 var array=new Array(); Java中创建数组 private String[] array=new String[3]; 两个完全不同的,js中是可变长度的 添加内容 ...
- 你不知道的javaScript笔记(3)
对象 对象可以通过两种形式定义: 声明形式和构造形式 声明形式语法: var myObj = {key:value} 构造形式语法: var myObj = new Object(); myObj.k ...
- Linux分享笔记:系统状态检测命令小结
作为一名合格的运维人员,要能很好地了解Linux服务器,要能熟练查看Linux系统的运行状态.以下是常用到的Linux系统状态检测命令. 1. ifconfig:用于获取网卡配置与网络状态等信息.通常 ...
- python字符串的格式化输出
很多时候我们在打印输入内容时希望有简单格式而不是拼接 一般做法: name = input("name:").strip() age = input("age:" ...
- vue兄弟组件传值$on多次执行的问题
首先附上如何进行兄弟组件通信的方法链接 https://segmentfault.com/a/1190000011882494 下面是$on多次执行的解决办法 https://blog.csdn.ne ...
- 配置p6spyLog输出sql完整日志
第一步: 配置maven <dependency> <groupid>p6spy</groupid> <artifactid>p6spy< ...
- 【mysql学习-2】
part-1: USE mysql;CREATE TABLE tb_x(id INT,NAME CHAR(10));INSERT INTO tb_x VALUES(5,"a");S ...