【发布时间】:2016-12-07 17:53:34
【问题描述】:
为了确定pandas dataframe 组的统计信息,我找到了Chris Albon 的解释,我想将其应用于按两个元素(此 MWE 中的“a”和“b”)分组的数据框。
所以这里有一个计算一些组统计数据的函数:
def get_group_stats(group):
return {'count': group.count().add_prefix('count_'),
'mean': group.mean().add_prefix('mean_'),
'sum': group.sum().add_prefix('sum_')}
数据框df的定义:
df = pd.DataFrame( {'a':['A','A','B','B','B','C'],
'b':['A','A','B','A','B','A'],
'c':[ 1, 2, 5, 5, 4, 6 ]})
然后创建按“a”和“b”分组的统计表:
s1 = df.groupby(['a', 'b']).apply(get_group_stats)
但是建议的unstack() 函数没有正确合并数据帧。我想要什么:
a | b | count_c | mean_c | sum_c
-------------------------------------------------
A | A | 2 | 1.5 | 3.0
B | A | 1 | 5.0 | 5.0
B | B | 2 | 4.5 | 9.0
C | B | 1 | 6.0 | 6.0
【问题讨论】:
标签: python python-3.x pandas