Tuesday, June 9, 2026
HomeLanguagesNumpy recarray.cumprod() function | Python

Numpy recarray.cumprod() function | Python

In numpy, arrays may have a data-types containing fields, analogous to columns in a spreadsheet. An example is [(a, int), (b, float)], where each entry in the array is a pair of (int, float). Normally, these attributes are accessed using dictionary lookups such as arr['a'] and arr['b']. Record arrays allow the fields to be accessed as members of the array, using arr.a and arr.b.

numpy.recarray.cumprod() function returns the cumulative product of array elements over a given axis.

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

Parameters:
axis : Axis along which the cumulative product is computed. The default is to compute the product of the flattened array.
dtype : 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 : A new array holding the result is returned unless out is specified, in which case it is returned.

Code #1 :




# Python program explaining
# numpy.recarray.cumprod() method 
  
# importing numpy as geek
import numpy as geek
  
# creating input array with 2 different field 
in_arr = geek.array([[(5.0, 2), (3.0, -4), (6.0, 9)],
                     [(9.0, 1), (5.0, 4), (-12.0, -7)]],
                     dtype =[('a', float), ('b', int)])
print ("Input array : ", in_arr)
  
# convert it to a record array,
# using arr.view(np.recarray)
rec_arr = in_arr.view(geek.recarray)
print("Record array of float: ", rec_arr.a)
print("Record array of int: ", rec_arr.b)
  
# applying recarray.cumprod methods
# to float record array along axis 1
out_arr = rec_arr.a.cumprod( axis = 1)
print ("Output array along axis 1: ", out_arr) 
  
# applying recarray.cumprod methods 
# to int record array along axis 0
out_arr = rec_arr.b.cumprod(axis = 0)
print ("Output  array along axis 0: ", out_arr) 


Output:

Input array :  [[(  5.,  2) (  3., -4) (  6.,  9)]
 [(  9.,  1) (  5.,  4) (-12., -7)]]
Record array of float:  [[  5.   3.   6.]
 [  9.   5. -12.]]
Record array of int:  [[ 2 -4  9]
 [ 1  4 -7]]
Output array along axis 1:  [[   5.   15.   90.]
 [   9.   45. -540.]]
Output  array along axis 0:  [[  2  -4   9]
 [  2 -16 -63]]
Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32515 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6896 POSTS0 COMMENTS
Nicole Veronica
12012 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12109 POSTS0 COMMENTS
Shaida Kate Naidoo
7018 POSTS0 COMMENTS
Ted Musemwa
7262 POSTS0 COMMENTS
Thapelo Manthata
6976 POSTS0 COMMENTS
Umr Jansen
6963 POSTS0 COMMENTS