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