tf.keras.ops.nanprod

Product of a tensor over the given axes, ignoring NaNs.

x Input tensor.
axis Axis or axes along which the product is computed. The default is to compute the product of the flattened tensor.
keepdims If this is set to True, the axes which are reduced are left in the result as dimensions with size one.

Output tensor containing the product, with NaN values ignored.

Examples:

import numpy as np
from keras import ops
x = np.array([[1.0, np.nan, 3.0],
              [np.nan, 2.0, 1.0]])
ops.nanprod(x)
6.0
ops.nanprod(x, axis=1)
array([3., 2.])
ops.nanprod(x, axis=1, keepdims=True)
array([[3.],
       [2.]])