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 聚合函数 (meanmedianprodsumstd
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