Open In App

Python | Pandas Series.cumsum() to find cumulative sum of a Series

Improve
Improve
Like Article
Like
Save
Share
Report

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.



Last Updated : 31 Oct, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads