您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Pandas获得分组平均

Pandas获得分组平均

重置索引应该可以。尝试这个:

In [19]: df.groupby(['id', 'mth']).sum().reset_index().groupby('id').mean()  
Out[19]: 
    mth       cost
id                
1   4.0  33.333333
2   4.0  86.666667

您可以随意放下mth。逻辑是,在完成sum部分之后,您将具有以下内容

In [20]: df.groupby(['id', 'mth']).sum()
Out[20]: 
        cost
id mth      
1  3      30
   4      30
   5      40
2  3      50
   4     130
   5      80

此时重置索引将为您提供独特的月份。

In [21]: df.groupby(['id', 'mth']).sum().reset_index()
Out[21]: 
   id  mth  cost
0   1    3    30
1   1    4    30
2   1    5    40
3   2    3    50
4   2    4   130
5   2    5    80

只需将其再次分组即可,这次使用mean代替sum。这应该给您平均值。

让我们知道是否有帮助。

其他 2022/1/1 18:43:00 有380人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶