Compute the q-th quantile(s) of the data along the specified axis, while ignoring NaNs.
tf.keras.ops.nanquantile(
x, q, axis=None, method='linear', keepdims=False
)
Args |
x
|
Input tensor.
|
q
|
Probability or sequence of probabilities for the quantiles to
compute. Values must be between 0 and 1 inclusive.
|
axis
|
Axis or axes along which the quantiles are computed. Defaults to
axis=None which is to compute the quantile(s) along a flattened
version of the array.
|
method
|
A string specifies the method to use for estimating the
quantile. Available methods are "linear", "lower", "higher",
"midpoint", and "nearest". Defaults to "linear".
If the desired quantile lies between two data points i < j:
"linear": i + (j - i) * fraction, where fraction is the
fractional part of the index surrounded by i and j.
"lower": i.
"higher": j.
"midpoint": (i + j) / 2
"nearest": i or j, whichever is nearest.
|
keepdims
|
If this is set to True, the axes which are reduced
are left in the result as dimensions with size one.
|
Returns |
|
The quantile(s) ignoring NaNs.
|
Examples:
import keras
from keras import ops
x = keras.ops.array([1., 2., 3., 4.])
keras.ops.nanquantile(x, 0.5)
2.5
x = keras.ops.array([1., 2., float("nan"), 4.])
keras.ops.nanquantile(x, 0.5)
2.0
x = keras.ops.array([1., 2., 3., 4.])
keras.ops.nanquantile(x, [0.25, 0.75])
array([1.75, 3.25])
x = keras.ops.array([[1., 2., float("nan")],
[4., 5., 6.]])
keras.ops.nanquantile(x, 0.5, axis=1)
array([1.5, 5.0])