Numpy MaskedArray.cumsum() function | Python

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]



