本周我刚刚开始使用大熊猫。
这是一张包含电影名称,用户ID和用户评分的表格 去看电影。只有用户查看的电影才被评为
我有一个像这样的数据透视表,只有一行:
In[1]: ratings_matrix = combine_movies_ratings.pivot_table(index='userID', columns='title', values='rating').fillna(0)
Out[1]:
title MovieA MovieB MovieC .... MovieN
userID
1 5 0 3 .... 0
我正在使用ratings_matrix.loc[1].values
访问值,这会返回一个包含所有评分的数组[5, 0, ...., 0]
我使用ratings_matrix.loc[1].columns
我希望用户能够评估前五部电影的结果,因为数据集中的每部电影都不会被评级。
['MovieA', 'MovieC', 'MovieB' ... ]
我的尝试是: - 对数据透视表进行排序以显示具有评级值的第一部电影,因为默认情况下它们按字母顺序排序,在某些情况下,第一部电影的评级为0,用户未对其进行评级。
欢迎提出建议
答案 0 :(得分:0)
也许你可以试试
(combine_movies_ratings.sort_values('rating').groupby('userID').head(5)).title