tf.keras.ops.nanstd

Compute the standard deviation along the specified axes, ignoring NaNs.

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

Output tensor containing the standard deviation ignoring NaNs.

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.nanstd(x)
0.8291562
ops.nanstd(x, axis=1)
array([1. , 0.5])
ops.nanstd(x, axis=1, keepdims=True)
array([[1. ],
       [0.5]])