1. 函数功能
沿着指定轴使用一个或多个操作进行聚合。
DataFrame.agg与DataFram.aggregate()一样
返回值:
- 当对Series运用单个函数聚合,返回一个标量;
- 当对DataFrame运用单个函数聚合,返回一个Series;
- 当对DataFrame、Series运用多个函数聚合,返回一个DataFrame
2. 函数语法
DataFrame.agg(func=None, axis=0, *args, **kwargs)
3. 函数参数
参数 | 含义 |
---|---|
func | 聚合操作中用到的函数:可以接收:函数,函数名字符串,函数列表:如[np.sum,np.mean],字典 |
axis | 0或"axis":将函数作用到每列;1或"columns":将函数作用到每行 |
*args | 位置参数,传递给func的参数 |
**kwargs | 字典参数,传递给func的参数 |
3.1 对DataFrame运用单个函数聚合
data = pd.DataFrame({'key1': ['a', 'b', 'a', 'b', 'a', 'b', 'a', 'a'],
'key2': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'],
'data1': np.random.randn(8),
'data2': np.random.randn(8)})
print(data[['data1', 'data2']].agg('mean'))
print(type(data[['data1', 'data2']].agg('mean')))
3.2 对DataFrame运用多个函数聚合
print(data[['data1', 'data2']].agg(['mean','sum']))
print(type(data[['data1', 'data2']].agg(['mean','sum'])))
3.3 对Series运用多个函数聚合
print(data['data1'].agg(['mean','sum']))
print(type(data['data1'].agg(['mean','sum'])))
3.4 对Series运用单个函数聚合
print(data['data1'].agg('sum'))
print(type(data['data1'].agg('sum')))
3.5 对不同的列运用不同的聚合函数
print(data.agg({'data1':'sum','data2':'count'}))
print(data.agg({'data1':['sum','max'],'data2':'count'}))