零基础入门推荐系统-新闻推荐-【数据分析】

零基础入门推荐系统-新闻推荐-天池大赛-阿里云天池

Task02[数据分析]
数据分析:用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。其价值在于熟悉了解整个数据集的基本情况包括每一个文件里有哪些字段,每个字段表示什么实际含义,以及数据集中特征之间的相关性,在推荐场景下主要就是分析用户本身的基本属性,文章基本属性,以及用户和文章交互的一些分布,这些都有利于后面的召回策略的选择,以及特征工程。

接下来就是具体数据分析:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
train_click_log.csv文件数据中每个字段的含义
user_id: 用户的唯一标识
click_article_id: 用户点击的文章唯一标识
click_timestamp: 用户点击文章时的时间戳
click_environment: 用户点击文章的环境
click_deviceGroup: 用户点击文章的设备组
click_os: 用户点击文章时的操作系统
click_country: 用户点击文章时的所在的国家
click_region: 用户点击文章时所在的区域
click_referrer_type: 用户点击文章时,文章的来源
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
从点击时间clik_timestamp来看,分布较为平均,可不做特殊处理。由于时间戳是13位的,后续将时间格式转换成10位方便计算。

从点击环境click_environment来看,仅有1922次(占0.1%)点击环境为1;仅有24617次(占2.3%)点击环境为2;剩余(占97.6%)点击环境为4。

从点击设备组click_deviceGroup来看,设备1占大部分(60.4%),设备3占36%。

测试集用户点击日志

testA_click = testA_click.merge(articles, how='left', on=['click_article_id'])
testA_click.head()
user_id	click_article_id	click_timestamp	click_environment	click_deviceGroup	click_os	click_country	click_region	click_referrer_type	rank	click_cnts	category_id	created_at_ts	words_count

0 249999 160974 1506959142820 4 1 17 1 13 2 19 19 281 1506912747000 259
1 249999 160417 1506959172820 4 1 17 1 13 2 18 19 281 1506942089000 173
2 249998 160974 1506959056066 4 1 12 1 13 2 5 5 281 1506912747000 259
3 249998 202557 1506959086066 4 1 12 1 13 2 4 5 327 1506938401000 219
4 249997 183665 1506959088613 4 1 17 1 15 5 7 7 301 1500895686000 256

testA_click.describe()
user_id	click_article_id	click_timestamp	click_environment	click_deviceGroup	click_os	click_country	click_region	click_referrer_type	rank	click_cnts	category_id	created_at_ts	words_count

count 518010.000000 518010.000000 5.180100e+05 518010.000000 518010.000000 518010.000000 518010.000000 518010.000000 518010.000000 518010.000000 518010.000000 518010.000000 5.180100e+05 518010.000000
mean 227342.428169 193803.792550 1.507387e+12 3.947300 1.738285 13.628467 1.348209 18.250250 1.819614 15.521785 30.043586 305.324961 1.506883e+12 210.966331
std 14613.907188 88279.388177 3.706127e+08 0.323916 1.020858 6.625564 1.703524 7.060798 1.082657 33.957702 56.868021 110.411513 5.816668e+09 83.040065
min 200000.000000 137.000000 1.506959e+12 1.000000 1.000000 2.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000 1.265812e+12 0.000000
25% 214926.000000 128551.000000 1.507026e+12 4.000000 1.000000 12.000000 1.000000 13.000000 1.000000 4.000000 10.000000 252.000000 1.506970e+12 176.000000
50% 229109.000000 199197.000000 1.507308e+12 4.000000 1.000000 17.000000 1.000000 21.000000 2.000000 8.000000 19.000000 323.000000 1.507249e+12 199.000000
75% 240182.000000 272143.000000 1.507666e+12 4.000000 3.000000 17.000000 1.000000 25.000000 2.000000 18.000000 35.000000 399.000000 1.507630e+12 232.000000
max 249999.000000 364043.000000 1.508832e+12 4.000000 5.000000 20.000000 11.000000 28.000000 7.000000 938.000000 938.000000 460.000000 1.509949e+12 3082.000000
我们可以看出训练集和测试集的用户是完全不一样的

训练集的用户ID由0 ~ 199999,而测试集A的用户ID由200000 ~ 249999。

#测试集中的用户数量为5w
testA_click.user_id.nunique()
50000
tst_click.groupby('user_id')['click_article_id'].count().min() # 注意测试集里面有只点击过一次文章的用户
1
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值