What is the numpy.nanprod() function in Numpy?

Overview

The numpy.nanprod() function in NumPy returns the product of each element of an input array over a given axis in a way that Not a Number(NaNs) are treated as ones.

Syntax

numpy.nanprod(a, axis=None, dtype=None, out=None)

Parameter value

The numpy.nanprod() function takes the following parameter values:

  • a(required): This is the input array that contains the numbers to be computed.
  • axis(optional): This is the axis along which the product is determined.
  • dtype(optional): This is the data type of the output array.
  • out(optional): This is the alternate array where the result is placed.

Return value

The numpy.nanprod() function returns an output array holding the result.

Example

import numpy as np
# Creating an array
x = np.array([1, 2, np.nan, 2, np.nan])
# Implementing the nanprod() function
myarray = np.nanprod(x, axis=0)
print(x)
print(myarray)

Explanation

  • Line 1: We import the numpy module.
  • Line 4: We create an array x using the array() method.
  • Line 7: We implement the np.nanprod() function on the array. The result is assigned to a variable, myarray.
  • Line 9: We print the input array x.
  • Line 10: We print the variable myarray.

Note: We get the output 4 product of the elements as follows: 1×2×np.nan×2×np.nan = 1×2×1×2×1 = 4. This is because the Nans values are treated as 1.

Free Resources