pandas.core.groupby.DataFrameGroupBy.mean#

DataFrameGroupBy.mean(numeric_only=False, engine=None, engine_kwargs=None)[源代码]#

计算各组的均值,排除缺失值。

参数:
numeric_only布尔值, 默认为 False

只包含浮点数、整数、布尔列。

在 2.0.0 版本发生变更: numeric_only 不再接受 None 并且默认值为 False

引擎str, 默认为 None
  • 'cython' : 通过来自cython的C扩展运行操作。

  • 'numba' : 通过来自 numba 的 JIT 编译代码运行操作。

  • None : 默认为 'cython' 或全局设置 compute.use_numba

Added in version 1.4.0.

engine_kwargs字典, 默认为 None
  • 对于 'cython' 引擎,没有接受的 engine_kwargs

  • 对于 'numba' 引擎,引擎可以接受 nopythonnogilparallel 字典键。值必须是 TrueFalse'numba' 引擎的默认 engine_kwargs{{'nopython': True, 'nogil': False, 'parallel': False}}

Added in version 1.4.0.

返回:
pandas.Series 或 pandas.DataFrame

每个组内值的平均值。与调用者相同的对象类型。

参见

Series.groupby

对一个 Series 应用 groupby 函数。

DataFrame.groupby

对DataFrame的每一行或每一列应用一个groupby函数。

例子

>>> df = pd.DataFrame(
...     {"A": [1, 1, 2, 1, 2], "B": [np.nan, 2, 3, 4, 5], "C": [1, 2, 1, 1, 2]},
...     columns=["A", "B", "C"],
... )

按一列分组并返回每个组中其余列的平均值。

>>> df.groupby("A").mean()
     B         C
A
1  3.0  1.333333
2  4.0  1.500000

按两列分组并返回剩余列的平均值。

>>> df.groupby(["A", "B"]).mean()
         C
A B
1 2.0  2.0
  4.0  1.0
2 3.0  1.0
  5.0  2.0

按一列分组并返回组中特定列的平均值。

>>> df.groupby("A")["B"].mean()
A
1    3.0
2    4.0
Name: B, dtype: float64