numpy.MaskedArray.cumsum()
Return the cumulative sum of the masked array elements over the given axis.Masked values are set to 0 internally during the computation. However, their position is saved, and the result will be masked at the same locations.
Syntax :
numpy.ma.cumsum(axis=None, dtype=None, out=None)
Parameters:
axis :[ int, optional] Axis along which the cumulative sum is computed. The default (None) is to compute the cumsum over the flattened array.
dtype : [dtype, optional] Type of the returned array, as well as of the accumulator in which the elements are multiplied.
out : [ndarray, optional] A location into which the result is stored.
  -> If provided, it must have a shape that the inputs broadcast to.
  -> If not provided or None, a freshly-allocated array is returned.Return : [cumsum_along_axis, ndarray] A new array holding the result is returned unless out is specified, in which case a reference to out is returned.
Code #1 :
# Python program explaining # numpy.MaskedArray.cumsum() method     # importing numpy as geek  # and numpy.ma module as ma import numpy as geek import numpy.ma as ma     # creating input array  in_arr = geek.array([[ 1 , 2 ], [ 3 , - 1 ], [ 5 , - 3 ]]) print ( "Input array : " , in_arr)     # Now we are creating a masked array. # by making entry as invalid.  mask_arr = ma.masked_array(in_arr, mask = [[ 1 , 0 ], [ 1 , 0 ], [ 0 , 0 ]]) print ( "Masked array : " , mask_arr)     # applying MaskedArray.cumsum    # methods to masked array out_arr = mask_arr.cumsum() print ( "cumulative sum of masked array along default axis : " , out_arr)     |
Input array : [[ 1 2] [ 3 -1] [ 5 -3]] Masked array : [[-- 2] [-- -1] [5 -3]] cumulative sum of masked array along default axis : [-- 2 -- 1 6 3]
Â
Code #2 :
# Python program explaining # numpy.MaskedArray.cumsum() method      # importing numpy as geek  # and numpy.ma module as ma import numpy as geek import numpy.ma as ma      # creating input array in_arr = geek.array([[ 1 , 0 , 3 ], [ 4 , 1 , 6 ]]) print ( "Input array : " , in_arr)       # Now we are creating a masked array. # by making one entry as invalid.  mask_arr = ma.masked_array(in_arr, mask = [[ 0 , 0 , 0 ], [ 0 , 0 , 1 ]]) print ( "Masked array : " , mask_arr)      # applying MaskedArray.cumsum methods # to masked array out_arr1 = mask_arr.cumsum(axis = 0 ) print ( "cumulative sum of masked array along 0 axis : " , out_arr1)   out_arr2 = mask_arr.cumsum(axis = 1 ) print ( "cumulative sum of masked array along 1 axis : " , out_arr2)        |
Input array : [[1 0 3] [4 1 6]] Masked array : [[1 0 3] [4 1 --]] cumulative sum of masked array along 0 axis : [[1 0 3] [5 1 --]] cumulative sum of masked array along 1 axis : [[1 1 4]