pandas.Series.cumsum#

Series.cumsum(axis=None, skipna=True, *args, **kwargs)[源代码]#

返回DataFrame或Series轴上的累计和。

返回包含累计和的相同大小的DataFrame或Series。

参数
axis{0或‘index’,1或‘Columns’},默认为0

轴的索引或名称。0等同于无或‘index’。

skipna布尔值,默认为True

排除NA/NULL值。如果整行/列为NA,则结果将为NA。

*args, ** 科瓦格人

其他关键字不起作用,但可能会因为与NumPy兼容而被接受。

退货
标量或级数

返回标量或系列的累计和。

参见

core.window.Expanding.sum

类似的功能,但忽略 NaN 价值。

Series.sum

返回级数轴上的总和。

Series.cummax

返回系列轴上的累计最大值。

Series.cummin

返回系列轴上的累计最小值。

Series.cumsum

返回系列轴上的累计和。

Series.cumprod

返回系列轴上的累计产品。

示例

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=Noneaxis='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