jax.numpy.nanquantile#
- jax.numpy.nanquantile(a, q, axis=None, out=None, overwrite_input=False, method='linear', keepdims=False, *, interpolation=Deprecated)[source]#
计算指定轴上的数据分位数,忽略 NaN 值。
JAX 实现的
numpy.nanquantile()
。- 参数:
a (ArrayLike) – N 维数组输入。
q (ArrayLike) – 指定所需分位数的标量或一维数组。
q
应包含介于0.0
和1.0
之间的浮点数值。out (None) – JAX 未实现;如果不是 None 则会报错。
overwrite_input (bool) – JAX 未实现;如果不是 False 则会报错。
method (str) – 指定要使用的插值方法。选项为
["linear", "lower", "higher", "midpoint", "nearest"]
中的一个。默认值为linear
。keepdims (bool) – 如果为 True,则返回的数组将具有与输入相同的维数。默认值为 False。
interpolation (DeprecatedArg | str) – 已弃用的
method
参数的别名。如果使用,将导致DeprecationWarning
。
- 返回:
一个数组,包含指定轴上的指定分位数。
- 返回类型:
另请参阅
jax.numpy.quantile()
:计算分位数,但不忽略 NaN 值。jax.numpy.nanpercentile()
:计算百分位数 (0-100)。
示例
计算一维数组的中位数和四分位数
>>> x = jnp.array([0, 1, 2, jnp.nan, 3, 4, 5, 6]) >>> q = jnp.array([0.25, 0.5, 0.75])
由于 NaN 值,
jax.numpy.quantile()
返回所有 NaN 值,而nanquantile()
会忽略它们。>>> jnp.quantile(x, q) Array([nan, nan, nan], dtype=float32) >>> jnp.nanquantile(x, q) Array([1.5, 3. , 4.5], dtype=float32)