pandas.core.groupby.SeriesGroupBy.sum#
- SeriesGroupBy.sum(numeric_only=False, min_count=0, engine=None, engine_kwargs=None)[源代码]#
计算组值的总和。
- 参数:
- numeric_onlybool, 默认 False
仅包含浮点数、整数、布尔列。
在 2.0.0 版本发生变更: numeric_only 不再接受
None
。- min_countint, 默认 0
执行操作所需的有效值的数量。如果少于
min_count
个非NA值存在,结果将是NA。- 引擎str, 默认 None None
'cython'
: 通过来自cython的C扩展运行滚动应用。'numba'
通过来自 numba 的 JIT 编译代码运行滚动应用。只有在
raw
设置为True
时才可用。
None
: 默认为'cython'
或全局设置compute.use_numba
- engine_kwargs字典, 默认为 None None
对于
'cython'
引擎,没有接受的engine_kwargs
- 对于
'numba'
引擎,该引擎可以接受nopython
,nogil
和
parallel
字典键。值必须是True
或False
。'numba'
引擎的默认engine_kwargs
是{'nopython': True, 'nogil': False, 'parallel': False}
,并将应用于func
和apply
groupby 聚合。
- 对于
- 返回:
- Series 或 DataFrame
计算每个组内值的总和。
示例
对于 SeriesGroupBy:
>>> lst = ['a', 'a', 'b', 'b'] >>> ser = pd.Series([1, 2, 3, 4], index=lst) >>> ser a 1 a 2 b 3 b 4 dtype: int64 >>> ser.groupby(level=0).sum() a 3 b 7 dtype: int64
对于 DataFrameGroupBy:
>>> data = [[1, 8, 2], [1, 2, 5], [2, 5, 8], [2, 6, 9]] >>> df = pd.DataFrame(data, columns=["a", "b", "c"], ... index=["tiger", "leopard", "cheetah", "lion"]) >>> df a b c tiger 1 8 2 leopard 1 2 5 cheetah 2 5 8 lion 2 6 9 >>> df.groupby("a").sum() b c a 1 10 7 2 11 17