Python numpy cumsum() function returns the cumulative sum of the elements along the given axis.
The cumsum() method syntax is:
cumsum(array, axis=None, dtype=None, out=None)
Let’s look at some examples of calculating cumulative sum of numpy array elements.
import numpy as np
array1 = np.array(
[[1, 2],
[3, 4],
[5, 6]])
total = np.cumsum(array1)
print(f'Cumulative Sum of all the elements is {total}')
Output: Cumulative Sum of all the elements is [ 1 3 6 10 15 21]
Here, the array is first flattened to [ 1 2 3 4 5 6]. Then the cumulative sum is calculated, resulting in [ 1 3 6 10 15 21].
import numpy as np
array1 = np.array(
[[1, 2],
[3, 4],
[5, 6]])
total_0_axis = np.cumsum(array1, axis=0)
print(f'Cumulative Sum of elements at 0-axis is:\n{total_0_axis}')
total_1_axis = np.cumsum(array1, axis=1)
print(f'Cumulative Sum of elements at 1-axis is:\n{total_1_axis}')
Output:
Cumulative Sum of elements at 0-axis is:
[[ 1 2]
[ 4 6]
[ 9 12]]
Cumulative Sum of elements at 1-axis is:
[[ 1 3]
[ 3 7]
[ 5 11]]
import numpy as np
array1 = np.array(
[[1, 2],
[3, 4],
[5, 6]])
total_1_axis = np.cumsum(array1, axis=1, dtype=float)
print(f'Cumulative Sum of elements at 1-axis is:\n{total_1_axis}')
Output:
Cumulative Sum of elements at 1-axis is:
[[ 1. 3.]
[ 3. 7.]
[ 5. 11.]]
Reference: API Doc
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
Java and Python Developer for 20+ years, Open Source Enthusiast, Founder of https://www.askpython.com/, https://www.linuxfordevices.com/, and JournalDev.com (acquired by DigitalOcean). Passionate about writing technical articles and sharing knowledge with others. Love Java, Python, Unix and related technologies. Follow my X @PankajWebDev
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.