Numpy MaskedArray.cumprod () Function | python

numpy.MaskedArray.cumprod() Returns the cumulative product of masked array elements along the specified axis. Scaled values ​​are set to 1 internally during computation. However, their position is preserved and the result will be masked in the same places.

Syntax: numpy.ma.cumprod (axis = None, dtype = None, out = None)

Parameters:

axis: [int, optional] Axis along which the cumulative product is computed. The default (None) is to compute the cumprod over the flattened array.
dtype: [dtype, optional] Type of the returned array, as well as of the accumulator in which the elements are multiplied. If dtype is not specified, it defaults to the dtype of arr, unless arr has an integer dtype with a precision less than that of the default platform integer. In that case, the default platform integer is used instead.
out: [ndarray, optional] A location into which the result is stored.
 – & gt; If provided, it must have a shape that the inputs broadcast to.
 – & gt; If not provided or None, a freshly-allocated array is returned.

Return: [cumprod_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:

# Program Python explaining
# numpy.MaskedArray.cumprod () method

 
# import numy as geek
# and numpy.ma module as ma

import numpy as geek 

import numpy.ma as ma 

 
# create input array

in_arr = geek.array ([[ 1 , 2 ], [ 3 , - 1 ], [ 5 , - 3 ]])

print ( "Input array:" , in_arr) 

 
# Now we create a masked array.
# making an entry invalid.

mask_arr = ma.masked_array (in_arr, mask [[ 1 , 0 ], [ 1 , 0 ], [ 0 , 0 ]]) 

print ( "Masked array:" , mask_arr) 

 
# apply MaskedArray.cumprod
# methods masked array

out_arr = mask_arr.cumprod () 

print ( "cumulative product of masked array along default axis: " , out_arr) 

Output:

 Input array: [[1 2] [3 -1] [5 -3]] Masked array: [[- 2] [- -1] [5 -3]] cumulative sum of masked array along default axis: [- 2 - -2 -10 30] 

Code # 2:

# Python program explaining
# numpy.MaskedArray.cumprod () method

 
# import numy as a geek
# and the numpy module. ma as ma

import numpy as geek 

import numpy.ma as ma 

 
# create input array

in_arr = geek.array ([[ 1 , 0 , 3 ], [ 4 , 1 , 6 ]]) 

print ( "Input array:" , in_arr)

 
# Now we create masked array.
# invalidating one entry.

mask_arr = ma.masked_array (in_arr, mask = [[ 0 , 0 , 0 ], [ 0 , 0 , 1 ]] ) 

print ( "Masked array: " , mask_arr) 

  
# applying the MaskedArray.cumprod methods
# into the masked array

out_arr1 = mask_arr.cumprod (axis = 0

print ( "cumulative product of mask ed array along 0 axis: " , out_arr1)

  

out_arr2 = mask_arr.cumprod (axis = 1

print ( "cumulative product of masked array along 1 axis:" , out_arr2)

Exit:

 Input array: [[1 0 3] [4 1 6]] Masked array: [[1 0 3] [4 1 -]] cumulative product of masked array along 0 axis: [[1 0 3] [4 0 - ]] cumulative product of masked array along 1 axis: [[1 0 0] [4 4 -]]