【发布时间】:2017-03-20 20:41:37
【问题描述】:
我必须澄清我的问题,因为有些人认为这是一个不明确的问题。问题是,我有一个包含四种不同类型数据的列表。为了澄清我的想法,这里有一小部分。
UserID movie_id rating unix_timestamp
196 242 3 881250949
186 302 3 891717742
22 377 1 878887116
244 51 2 880606923
166 346 1 886397596
298 474 4 884182806
115 265 2 881171488
253 465 5 891628467
305 451 3 886324817
7 451 5 891353892
有些 monvies,他们从用户那里得到的评分总和是 50 、 44 或 88 等。
例如,movie_id (451) 得到了 3 和 5 的评分(所以它一起得到了 8 个评分)。我想排除那些评分低于 50 的电影。并获得评分超过 50 的其他电影的平均值(他们从用户那里获得的评分总和),并仅显示前 5 或 10 个值。
这是代码的一部分
grouped_data = ratings['rating'].groupby(ratings['movie_id'])
## average and combine
average_ratings = grouped_data.mean()
print ("Average ratings:")
print (average_ratings.head())
【问题讨论】:
-
我不明白你的问题......你是在问如何将结果限制在前五个?
-
您能否展示一个带有所需输出的示例
ratings?