pandas.DataFrame.agg #

数据框。agg ( func = None , axis = 0 , * args , ** kwargs ) [来源] #

使用指定轴上的一项或多项操作进行聚合。

参数
func函数、str、列表或字典

用于聚合数据的函数。如果是函数,则必须在传递 DataFrame 或传递给 DataFrame.apply 时起作用。

可接受的组合是:

  • 功能

  • 字符串函数名

  • 函数和/或函数名称列表,例如[np.sum, 'mean']

  • 轴标签的字典 -> 函数、函数名称或此类列表。

{0 或 'index', 1 或 'columns'}, 默认 0

如果 0 或“索引”:将函数应用于每一列。如果 1 或“列”:将函数应用于每一行。

*参数

要传递给func 的位置参数。

**夸格

要传递给func 的关键字参数。

返回
标量、系列或数据帧

返回值可以是:

  • 标量:当使用单个函数调用 Series.agg 时

  • Series :当使用单个函数调用 DataFrame.agg 时

  • DataFrame :当使用多个函数调用 DataFrame.agg 时

也可以看看

DataFrame.apply

执行任何类型的操作。

DataFrame.transform

执行转换类型操作。

pandas.DataFrame.groupby

对组执行操作。

pandas.DataFrame.resample

对重新采样的 bin 执行操作。

pandas.DataFrame.rolling

在滚动窗口上执行操作。

pandas.DataFrame.expanding

在扩展窗口上执行操作。

pandas.core.window.ewm.ExponentialMovingWindow

在指数加权窗口上执行操作。

笔记

聚合操作始终在轴(索引(默认)或列轴)上执行。此行为与numpy聚合函数(meanmedianprodsumstdvar )不同 ,其中默认值是计算展平数组的聚合,例如,numpy.mean(arr_2d)与 .numpy.mean(arr_2d, axis=0)

agg是aggregate的别名。使用别名。

改变传递的对象的函数可能会产生意外的行为或错误,因此不受支持。 有关更多详细信息,请参阅使用用户定义函数 (UDF) 方法进行变异。

传递的用户定义函数将传递给 Series 进行评估。

例子

>>> 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', '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