pandas.DataFrame.cumsum#
- DataFrame.cumsum(axis=0, skipna=True, numeric_only=False, *args, **kwargs)[源代码]#
沿 DataFrame 或 Series 轴返回累积和。
返回一个大小相同,包含累积和的 DataFrame 或 Series。
- 参数:
- axis{0 或 ‘index’, 1 或 ‘columns’}, 默认为 0
轴的索引或名称。0 等同于 None 或 ‘index’。对于 Series,此参数未使用,默认为 0。
- skipnabool, 默认 True
排除 NA/null 值。如果整行/整列均为 NA,则结果为 NA。
- numeric_onlybool, default False
仅包含浮点数、整数、布尔列。
- *args, **kwargs
其他关键字参数没有效果,但可能被接受以与 NumPy 兼容。
- 返回:
- Series 或 DataFrame
返回 Series 或 DataFrame 的累积和。
另请参阅
core.window.expanding.Expanding.sum功能类似,但会忽略
NaN值。DataFrame.sum返回 DataFrame 轴上的和。
DataFrame.cummax返回 DataFrame 轴上的累积最大值。
DataFrame.cummin返回 DataFrame 轴上的累积最小值。
DataFrame.cumsum返回 DataFrame 轴上的累积和。
DataFrame.cumprod返回 DataFrame 轴上的累积积。
示例
Series
>>> s = pd.Series([2, np.nan, 5, -1, 0]) >>> s 0 2.0 1 NaN 2 5.0 3 -1.0 4 0.0 dtype: float64
默认情况下,会忽略 NA 值。
>>> s.cumsum() 0 2.0 1 NaN 2 7.0 3 6.0 4 6.0 dtype: float64
要将 NA 值包含在运算中,请使用
skipna=False。>>> s.cumsum(skipna=False) 0 2.0 1 NaN 2 NaN 3 NaN 4 NaN dtype: float64
DataFrame
>>> df = pd.DataFrame( ... [[2.0, 1.0], [3.0, np.nan], [1.0, 0.0]], columns=list("AB") ... ) >>> df A B 0 2.0 1.0 1 3.0 NaN 2 1.0 0.0
默认情况下,会遍历行并在每列中找到总和。这等效于
axis=None或axis='index'。>>> df.cumsum() A B 0 2.0 1.0 1 5.0 NaN 2 6.0 1.0
要遍历列并在每行中找到总和,请使用
axis=1。>>> df.cumsum(axis=1) A B 0 2.0 3.0 1 3.0 NaN 2 1.0 1.0