Bird
Raised Fist0
NumPydata~5 mins

np.cumsum() for cumulative sum in NumPy - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does np.cumsum() do in numpy?

np.cumsum() calculates the cumulative sum of array elements along a given axis. It adds each element to the sum of all previous elements.

Click to reveal answer
beginner
How does np.cumsum() behave on a 1D array like [1, 2, 3]?

It returns [1, 3, 6] because:

  • 1 (first element)
  • 1 + 2 = 3 (sum of first two)
  • 1 + 2 + 3 = 6 (sum of all three)
Click to reveal answer
intermediate
Can np.cumsum() work on multi-dimensional arrays?

Yes, it can compute cumulative sums along a specified axis (rows or columns). If no axis is given, it treats the array as flattened.

Click to reveal answer
intermediate
What is the output of np.cumsum(np.array([[1,2],[3,4]]), axis=0)?

The cumulative sum along rows (axis=0) is:

[[1, 2],
 [4, 6]]

Explanation: sums down each column: 1, then 1+3=4; 2, then 2+4=6.

Click to reveal answer
beginner
Why is np.cumsum() useful in real life?

It helps track running totals, like daily sales, distances traveled, or cumulative scores, making it easier to see progress over time.

Click to reveal answer
What does np.cumsum([1, 2, 3, 4]) return?
A[1, 2, 3, 4]
B[1, 3, 6, 10]
C[10, 9, 7, 4]
D[4, 7, 9, 10]
If arr = np.array([[1,2],[3,4]]), what does np.cumsum(arr, axis=1) compute?
ACumulative sum down each column
BDifference between elements
CSum of all elements
DCumulative sum across each row
What happens if you call np.cumsum() without specifying an axis on a 2D array?
AIt sums elements row-wise
BIt sums elements column-wise
CIt treats the array as flat and sums cumulatively
DIt throws an error
Which of these is a real-life example where np.cumsum() is useful?
ACalculating daily total sales over a month
BFinding the maximum value in a dataset
CSorting a list of names alphabetically
DCounting the number of unique items
What is the shape of the output of np.cumsum() compared to the input array?
ASame shape
BAlways larger
CAlways smaller
DDepends on the axis
Explain how np.cumsum() works on a simple list of numbers.
Think about adding numbers one by one and keeping track of the total.
You got /3 concepts.
    Describe how you would use np.cumsum() on a 2D array to get cumulative sums along rows.
    Remember axis=1 means left to right across each row.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the np.cumsum() function do when applied to a 1D numpy array?
      easy
      A. Calculates the cumulative sum of the elements step by step
      B. Calculates the product of all elements
      C. Sorts the array in ascending order
      D. Finds the maximum value in the array

      Solution

      1. Step 1: Understand the function purpose

        np.cumsum() adds elements cumulatively, meaning each element is the sum of all previous elements plus itself.
      2. Step 2: Compare with other options

        Options B, C, and D describe different operations: product, sorting, and max value, which are not what np.cumsum() does.
      3. Final Answer:

        Calculates the cumulative sum of the elements step by step -> Option A
      4. Quick Check:

        np.cumsum() = cumulative sum [OK]
      Hint: Remember: cumsum means running total sum [OK]
      Common Mistakes:
      • Confusing cumulative sum with product
      • Thinking it sorts the array
      • Assuming it finds max or min values
      2. Which of the following is the correct syntax to compute the cumulative sum of a numpy array arr?
      easy
      A. np.cumsum(arr)
      B. All of the above
      C. np.cumsum(arr, axis=0)
      D. arr.cumsum()

      Solution

      1. Step 1: Check numpy function usage

        np.cumsum(arr) is the basic syntax to get cumulative sum of all elements in the array.
      2. Step 2: Check array method and axis parameter

        arr.cumsum() is a valid method call on numpy arrays. Also, np.cumsum(arr, axis=0) computes cumulative sum along the first axis, valid for multi-dimensional arrays.
      3. Final Answer:

        np.cumsum(arr) -> Option A
      4. Quick Check:

        Basic syntax is np.cumsum(arr) [OK]
      Hint: np and array method both work; axis optional [OK]
      Common Mistakes:
      • Thinking only np.cumsum(arr) works
      • Ignoring axis parameter for multi-dimensional arrays
      • Assuming cumsum is not an array method
      3. What is the output of the following code?
      import numpy as np
      arr = np.array([2, 4, 6, 8])
      cum_sum = np.cumsum(arr)
      print(cum_sum)
      medium
      A. [2 8 14 22]
      B. [2 4 6 8]
      C. [2 6 12 20]
      D. [20 18 14 8]

      Solution

      1. Step 1: Calculate cumulative sums stepwise

        Start with 2, then 2+4=6, then 6+6=12, then 12+8=20.
      2. Step 2: Form the cumulative sum array

        The resulting array is [2, 6, 12, 20].
      3. Final Answer:

        [2 6 12 20] -> Option C
      4. Quick Check:

        Running total sums = [2, 6, 12, 20] [OK]
      Hint: Add each element to sum of all before it [OK]
      Common Mistakes:
      • Confusing cumulative sum with original array
      • Adding elements incorrectly
      • Reversing the order of sums
      4. The following code throws an error. What is the problem?
      import numpy as np
      arr = np.array([[1, 2], [3, 4]])
      cum_sum = np.cumsum(arr, axis=2)
      print(cum_sum)
      medium
      A. Syntax error in np.cumsum call
      B. np.cumsum does not accept axis parameter
      C. Array must be 1D for cumsum
      D. Axis 2 does not exist for a 2D array

      Solution

      1. Step 1: Check array dimensions

        The array has shape (2, 2), so it has axes 0 and 1 only.
      2. Step 2: Validate axis parameter

        Using axis=2 is invalid because axis 2 does not exist for this 2D array, causing an error.
      3. Final Answer:

        Axis 2 does not exist for a 2D array -> Option D
      4. Quick Check:

        Axis must be within array dimensions [OK]
      Hint: Axis must be less than array dimensions [OK]
      Common Mistakes:
      • Assuming axis parameter is optional but invalid
      • Thinking cumsum only works on 1D arrays
      • Confusing syntax error with axis error
      5. Given a 2D numpy array representing daily sales for 3 products over 4 days:
      sales = np.array([[5, 3, 2],
                        [4, 6, 1],
                        [7, 2, 3],
                        [3, 5, 4]])

      Which code correctly computes the cumulative sales per product over the days?
      hard
      A. np.cumsum(sales)
      B. np.cumsum(sales, axis=0)
      C. np.cumsum(sales, axis=1)
      D. np.cumsum(sales, axis=2)

      Solution

      1. Step 1: Understand the array shape and axis meaning

        The array shape is (4, 3): 4 days (rows), 3 products (columns). Axis 0 moves down rows (days), axis 1 moves across products.
      2. Step 2: Choose axis for cumulative sum per product over days

        To get cumulative sales per product over days, sum down each column (axis=0).
      3. Final Answer:

        np.cumsum(sales, axis=0) -> Option B
      4. Quick Check:

        Cumulative sum down rows = axis 0 [OK]
      Hint: Sum down rows (axis=0) for cumulative per product [OK]
      Common Mistakes:
      • Using axis=1 sums across products, not over days
      • Ignoring axis parameter
      • Using invalid axis=2 for 2D array
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard