首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Pandas中使用group-by?

如何在Pandas中使用group-by?
EN

Stack Overflow用户
提问于 2016-04-08 12:09:11
回答 1查看 256关注 0票数 1

我的数据框看起来像这样(两列col1,col2)

代码语言:javascript
复制
1 100
2 150
3 170
1 200

我想按col1分组,

代码语言:javascript
复制
pd.DataFrame(combined.groupby('col1').aggregate(np.mean)['col2'])

这是返回一个只有一个关键字col2的数据帧,实际上,我希望输出是这样的(两列数据帧)

代码语言:javascript
复制
col1,mean(col2), 

谁能指出我需要做些什么才能做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2016-04-08 12:17:33

您可以将groupby与聚合meanreset_index一起使用

代码语言:javascript
复制
print df.groupby('col1')['col2'].mean().reset_index()
   col1  col2
0     1   150
1     2   150
2     3   170

带有参数as_index=Falsegroupby解决方案,如前面提到的John Galt

代码语言:javascript
复制
print df.groupby('col1', as_index=False)['col2'].mean()
   col1  col2
0     1   150
1     2   150
2     3   170

使用aggregate的解决方案

代码语言:javascript
复制
print df.groupby('col1', as_index=False).aggregate({'col2':'mean'})
   col1  col2
0     1   150
1     2   150
2     3   170

Aggregation in docs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36491366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档