NumPy | cumprod method
Start your free 7-days trial now!
NumPy's cumprod(~)
method returns an array holding the cumulative products of the input array.
Parameters
1. a
| array_like
The input array.
2. axis
| None
or int
| optional
The allowed values are as follows:
Axis | Meaning |
---|---|
0 | Cumulative product is computed column-wise |
1 | Cumulative product is computed row-wise |
None | Cumulative product is computed using entire array |
By default, axis=None
.
3. dtype
| string
or type
| optional
The desired data-type of the returned array. By default, the data-type is the same as that of the input array.
4. out
| NumPy array
| optional
A NumPy array to place the results in.
Return value
A NumPy array holding the cumulative product of the input elements.
Examples
1D array
To compute the cumulative product of a 1D array:
np.cumprod(x)
array([1, 2, 6])
Here, the we are performing the following computations:
[0] 1 = 1[1] 1 * 2 = 2[2] 1 * 2 * 3 = 6
2D array
Suppose we have the following 2D array:
x
array([[1, 2], [3, 4]])
All values
To compute the cumulative products of all values in the array:
np.cumprod(x)
array([ 1, 2, 6, 24])
Column-wise
To compute the cumulative products column-wise, set axis=0
:
np.cumprod(x, axis=0)
array([[1, 2], [3, 8]])
Row-wise
To compute the cumulative products row-wise, set axis=1
:
np.cumprod(x, axis=1)
array([[ 1, 2], [ 3, 12]])
Specifying a datatype
To obtain an array of data-type float
:
np.cumprod(x, dtype=float)
array([1., 2., 6.])
Here, the .
means that the numbers are floats.