pandas 对group进行聚合

DataFrameGroupBy.agg(arg, *args, **kwargs)
例子:

>>> df = pd.DataFrame({'A': [1, 1, 2, 2],
...                    'B': [1, 2, 3, 4],
...                    'C': np.random.randn(4)})

输出:

>>> df
   A  B         C
0  1  1  0.362838
1  1  2  0.227877
2  2  3  1.267767
3  2  4 -0.562860

对每一行使用agg函数

>>> df.groupby('A').agg('min')
   B         C
A
1  1  0.227877
2  3 -0.562860

对多列使用多个agg函数:

>>> df.groupby('A').agg(['min', 'max'])
    B             C
  min max       min       max
A
1   1   2  0.227877  0.362838
2   3   4 -0.562860  1.267767

选择一列使用agg函数:

>>> df.groupby('A').B.agg(['min', 'max'])
   min  max
A
1    1    2
2    3    4
>>> df.groupby('A').agg({'B': ['min', 'max'], 'C': 'sum'})
    B             C
  min max       sum
A
1   1   2  0.590716
2   3   4  0.704907

猜你喜欢

转载自blog.csdn.net/th_num/article/details/80991299
今日推荐