E:只能比较标记相同的系列对象

时间:2019-07-30 07:58:52

标签: python pandas numpy

我有一个数据集(称为“数据”),其中包含书籍列表以及用户在单个级别(列= userid,isbn,书名,书评)对书的评价方式。

我要为图书的总体(汇总)评分和评分数量创建一个新功能。然后,我想整理数据集,使其仅包含具有一定评分的图书。

我对评分的数量做了:

rating_count = data.groupby('Book-Title')['Book-Rating'].count().to_frame()
rating_count.rename(columns={'Book-Rating':'Rating-Count'}, inplace=True)
data = data.merge(rating_count, on='Book-Title', how='inner')
m = rating_count.quantile(.9) # trim threshols number
q_books = data.copy().loc[data['Rating-Count'] >= m] # new subsample

...上升到最后一行

  

ValueError:只能比较标记相同的Series对象

我们将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:1)

我随机生成了一个结构类似的数据框并运行您的代码。

可能会引发错误的是代码的最后一行,特别是... >= m]

m不会给您整数或浮点数;它具有系列类型。例如,在我的情况下,m是:

Rating-Count    3.0
Name: 0.9, dtype: float64

m[0]给了我3.0,因此代码按预期工作。


# fix the last line of your code
q_books = data.copy().loc[data['Rating-Count'] >= m[0]]