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.
import pandas as pd
import numpy as np
values = [ 3 , 4 , np.nan, 7 , 2 , 0 ]
series = pd.Series(values)
cumsum = series.cumsum()
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.
import pandas as pd
import numpy as np
values = [ 1 , 20 , 13 , np.nan, 0 , 1 , 5 , 23 ]
series = pd.Series(values)
cumsum = series.cumsum(skipna = False )
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.
Share your thoughts in the comments
Please Login to comment...