首页 > 解决方案 > 避免使用 pandas groupby 重复计数列

问题描述

pandas.Dataframe.groupby(['date','some_category']).agg([np.sum, np.size])生成对每个总和列重复的计数。传递聚合函数列表时是否可以只输出一个计数列?

a = df_all.groupby(['date','some_category']).sum()
b = df_all.groupby(['date','some_category']).size()
pd.concat([a,b], axis=1)

基本上产生了我想要的东西,但看起来很尴尬。

标签: pythonnumpyaggregatepandas-groupby

解决方案


df.pivot_table(index=['date', 'some_category'],aggfunc=['sum', 'size'])是我一直在寻找的。这会产生一个大小列(尽管我不确定为什么它被标记为“0”),而不是每个求和列的重复(相同)大小。谢谢大家,一路上我学到了一些有用的东西。


推荐阅读