pandas.DataFrame.agg#
- DataFrame.agg(func=None, axis=0, *args, **kwargs)[源代码]#
使用指定轴上的一个或多个操作进行聚合。
- 参数
- func函数、字符串、列表或字典
用于聚合数据的函数。如果是函数,则在传递DataFrame或传递给DataFrame.Apply时必须工作。
可接受的组合包括:
功能
字符串函数名
函数和/或函数名称列表,例如
[np.sum, 'mean']
轴标签的字典->函数、函数名称或此类列表。
- axis{0或‘index’,1或‘Columns’},默认为0
如果为0或‘index’:将函数应用于每一列。If 1或‘Columns’:对每行应用函数。
- *args
要传递到的位置参数 func 。
- **kwargs
要传递到的关键字参数 func 。
- 退货
- 标量、系列或数据帧
回报可以是:
Scalar:当使用单个函数调用Series.agg时
Series:使用单个函数调用DataFrame.agg时
DataFrame:当使用多个函数调用DataFrame.agg时
返回标量、Series或DataFrame。
- 聚合操作始终在一个轴上执行,可以是
- 索引(默认)或列轴。此行为不同于
- numpy 聚合函数 (mean , median , prod , sum , std ,
- var ),其中缺省值是计算被展平的
- 数组,例如,
numpy.mean(arr_2d)
与之相对的是 numpy.mean(arr_2d, axis=0)
。- agg 是的别名 aggregate 。使用别名。
参见
DataFrame.apply
执行任何类型的操作。
DataFrame.transform
执行转换类型操作。
core.groupby.GroupBy
对组执行操作。
core.resample.Resampler
对重新取样的回收箱执行操作。
core.window.Rolling
在滚动窗上执行操作。
core.window.Expanding
在展开窗口上执行操作。
core.window.ExponentialMovingWindow
在指数加权窗口上执行运算。
注意事项
agg 是的别名 aggregate 。使用别名。
改变传递的对象的函数可能会产生意外的行为或错误,因此不受支持。看见 使用用户定义函数(UDF)方法进行变异 了解更多详细信息。
传递的用户定义函数将传递一系列以供评估。
示例
>>> df = pd.DataFrame([[1, 2, 3], ... [4, 5, 6], ... [7, 8, 9], ... [np.nan, np.nan, np.nan]], ... columns=['A', 'B', 'C'])
在各行上聚合这些函数。
>>> df.agg(['sum', 'min']) A B C sum 12.0 15.0 18.0 min 1.0 2.0 3.0
每列不同的聚合。
>>> df.agg({'A' : ['sum', 'min'], 'B' : ['min', 'max']}) A B sum 12.0 NaN min 1.0 2.0 max NaN 8.0
在列上聚合不同的函数,并重命名结果DataFrame的索引。
>>> df.agg(x=('A', max), y=('B', 'min'), z=('C', np.mean)) A B C x 7.0 NaN NaN y NaN 2.0 NaN z NaN NaN 6.0
在柱子上聚合。
>>> df.agg("mean", axis="columns") 0 2.0 1 5.0 2 8.0 3 NaN dtype: float64