Skip to content
Related Articles
Python | Pandas Series.cumsum() to find cumulative sum of a Series
• Last Updated : 31 Oct, 2018

Pandas `Series.cumsum()` is used to find Cumulative sum of a series. In cumulative sum, the length of returned series is same as input and every element is equal to sum of all previous elements.

Syntax: Series.cumsum(axis=None, skipna=True)

Parameters:
axis: 0 or ‘index’ for row wise operation and 1 or ‘columns’ for column wise operation
skipna: Skips NaN addition for elements after the very next one if True.

Result type: Series

Example #1:
In this example, a series is created from a Python list using Pandas .Series() method. The list also contains a Null value and the skipna parameter is kept default, that is True.

 `# importing pandas module``import` `pandas as pd`` ` `# importing numpy module``import` `numpy as np`` ` `# making list of values``values ``=` `[``3``, ``4``, np.nan, ``7``, ``2``, ``0``]`` ` `# making series from list``series ``=` `pd.Series(values)`` ` `# calling method``cumsum ``=` `series.cumsum()`` ` `# display``cumsum`

Output:

```3
7
NaN
14
16
16
dtype: float64```

Explanation
Cumulative sum is sum of current and all previous values. As shown in above output, the addition was done as follows

```3
3+4 = 7
7+NaN = NaN
7+7 = 14
14+2 = 16
16+0 = 16```

Example #2: skipna=False
In this example, a series is created just like in the above example. But the `skipna `parameter is kept False. Hence NULL values won’t be ignored and it would be added every time after it’s occurrence.

 `# importing pandas module``import` `pandas as pd`` ` `# importing numpy module``import` `numpy as np`` ` `# making list of values``values ``=` `[``1``, ``20``, ``13``, np.nan, ``0``, ``1``, ``5``, ``23``]`` ` `# making series from list``series ``=` `pd.Series(values)`` ` `# calling method``cumsum ``=` `series.cumsum(skipna ``=` `False``)`` ` `# display``cumsum`

Output:

```0     1.0
1    21.0
2    34.0
3     NaN
4     NaN
5     NaN
6     NaN
7     NaN
dtype: float64```

Explanation: As it can be seen in output, all the values after first occurrence of NaN are also NaN since any number + NaN is also NaN.

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up