【问题标题】:How do I multiply values when using groupby [Python]使用 groupby [Python] 时如何将值相乘
【发布时间】:2021-02-15 19:46:02
【问题描述】:

我目前正在使用下面的代码来拆分电影的国家/地区并将它们与它们的评级联系起来。然后我使用 groupby 来计算每个国家的平均值。但是,我想将每个国家/地区的得分乘以每个国家/地区制作的电影数量。

s = countryGraph[['weighted_average_vote']].assign(country=countryGraph['country'].str.split(r'\s*,\s*')).explode('country')
avg = s.groupby('country')['weighted_average_vote'].mean()

我已经坚持了一段时间了。任何帮助表示赞赏:)

这是我目前得到的结果示例。我只需要计算有多少国家/地区对平均值做出了贡献,这样我就可以将每个分数乘以该分数。

数据来源:here

【问题讨论】:

    标签: python pandas dataframe csv pandas-groupby


    【解决方案1】:

    通过计算每个问题解决了我的问题。

     avg2 = s.groupby('country')['weighted_average_vote'].count()
    

    然后我将计数乘以平均值(使用比例因子)

    avg = avg * (avg2 * 0.00005)
    

    这给了我一个所有国家的列表(没有重复),它们的平均评分乘以“weighted_average_vote”的数量。

    【讨论】:

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