微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python pandas简单数据透视表总数

我正在尝试确定对我的数据进行简单调整的最佳方法

import pandas    
dfn = pandas.DataFrame({
    "A" : [ 'aaa', 'bbb', 'aaa', 'bbb' ],
    "B" : [     1,    10,     2,   30  ],
    "C" : [     2,     0,     3,   20  ] })

我想要的输出一个数据帧,按A分组,B和C的总和和计数值,名称必须是精确的(Sum_B,Sum_C,Count),如下所示:

A   Sum_B  Sum_C  Count
aaa    3      5       2
bbb   50     20       2

最快的方法是什么?

解决方法:

你可以使用.agg()功能

In [227]: dfn.groupby('A').agg({'B':sum, 'C':sum, 'A':'count'}).rename(columns={'A':'count'})
Out[227]:
      B  count   C
A
aaa   3      2   5
bbb  40      2  20

或者使用reset_index():

In [239]: dfn.groupby('A').agg({'B':sum, 'C':sum, 'A':'count'}).rename(columns={'A':'count'}).reset_index()
Out[239]:
     A   B  count   C
0  aaa   3      2   5
1  bbb  40      2  20

PS这是0700到@evan54提供的示例

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐