【问题标题】:Finding the mean of each key in a dataframe using groupby使用 groupby 查找数据框中每个键的平均值
【发布时间】:2017-10-16 02:15:04
【问题描述】:

我有一个啤酒类型列表和一个评级列表。有重复,因此每种啤酒类型都有多个评级。我把它们做成元组:

merge = zip(types, ratings)

我正在尝试找出每种啤酒类型的平均评分。我试图将元组制作成 Pandas DataFrame:

df = pandas.DataFrame([merge])

但我不知道在 groupby 参数中放什么。 我也试过这个:

df = pandas.DataFrame({'Ratings': [ratings], 'Types':[types]})
df.groupby('Types').mean()

但它也不起作用。我会在 groupby 中放入什么参数来完成这项工作?还是使用 groupby 不可行?

【问题讨论】:

  • 如果您的问题没有得到解答,您应该要求澄清。否则,您可以accept an answer
  • 很抱歉。你的回答很有帮助。谢谢!

标签: python pandas dataframe group-by pandas-groupby


【解决方案1】:

使用pd.DataFrame.from_records:

df = pd.DataFrame.from_records(merge, columns=['types', 'ratings'])

如果ratings不是数字类型,则使用pd.to_numeric进行转换:

df.ratings = pd.to_numeric(df.ratings, errors='coerce')

接下来,groupbytypes 上找到mean

g = df.groupby('types').ratings.mean()
print(g)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-19
    • 2015-06-01
    • 2018-12-16
    • 2021-12-22
    • 2023-04-03
    • 2021-01-19
    相关资源
    最近更新 更多