pandas如何处理用户和商品的交互数据

  统计/机器学习 推荐系统 数据预处理 Python    浏览次数:1847        分享
0

推荐系统中,预测下一个用户可能购买的商品,则要加入用户历史交互过的商品交互信息,该怎么把数据转换过去呢?

下面有一个例子:

原始数据:

user_id item_id
1 1
1 2
1 3

转换后的数据:


user_id item_id item_1 item_2 item_3 label
1 1 0 0 0 2
1 2 1 0 0 3
1 3 1 1 0 4

item_1, item_2, item_3代表之前用户交互过的商品

希望有大神能帮忙看看

 

cabbage   2020-04-08 23:25



   2个回答 
2

感觉pandas的crosstab可以满足你的要求

pandas.crosstab

SofaSofa数据科学社区DS面试题库 DS面经

何立诚   2020-04-09 09:14

好像可以,感谢! - cabbage   2020-04-09 10:52
1

Pandas中除了crosstab, pivot_table也可以实现。

 #crosstab
df = pd.DataFrame([[1, 1], [1, 2], [1, 3],[2,1],[2,2],[2,2]],
     columns=['user_id', 'item_id'])
pd.crosstab([df.user_id, df.item_id], df.item_id)
#pivot_table
pd.pivot_table(df,index = ['user_id', 'item_id'], 
               columns='item_id', values='item_id',
               aggfunc=len, fill_value=0)



SofaSofa数据科学社区DS面试题库 DS面经

QuinnWei   2020-04-12 05:25



  相关讨论

用户画像里的TGI是什么意思?

用户画像具体是指什么?

用户人群分层分析的RFM模型是什么?

协同过滤的数据预处理问题

【站务】垃圾发帖、恶意用户检测系统上线

关于pairwise ranking数据预处理的问题

怎么给推荐结果增加多样性和随机性?

两个向量的余弦距离大于1?

推荐系统里的ALS是什么意思?

pointwise和pairwise推荐排序算法的区别是什么?

  随便看看

点击率的95%置信区间该怎么算?

什么是K-Modes(K众数)聚类法?

怎么理解推荐系统中的NDCG?

训练神经网络中经常提到的epoch是什么意思

为什么LASSO可以做特征选择,而Ridge却不行?