scipy.special.ndtri#

scipy.special.ndtri(p, out=None) = <ufunc 'ndtri'>#

ndtr 的逆函数。

返回分位数 x,使得标准正态分布在 x 处的累积分布函数值等于 p,即 ndtr(x) == p

参数:
parray_like

概率值。

outndarray, optional

函数结果的可选输出数组。

返回:
xscalar or ndarray

对应于 p 中概率的分位数。

另请参阅

ndtr

标准正态累积分布函数

ndtri_exp

log_ndtr 的逆函数

附注

数组 API 标准支持

ndtri 除了支持 NumPy 外,还对符合 Python 数组 API 标准的后端提供了实验性支持。请考虑通过设置环境变量 SCIPY_ARRAY_API=1 并提供 CuPy、PyTorch、JAX 或 Dask 数组作为数组参数来测试这些功能。支持以下后端与设备(或其他功能)的组合。

CPU

GPU

NumPy

不适用

CuPy

不适用

PyTorch

JAX

Dask

不适用

有关更多信息,请参阅 对数组 API 标准的支持

示例

ndtri 是标准正态分布的百分位(分位数)函数,即累积分布函数 ndtr 的逆函数。

首先,计算累积分布值

>>> import numpy as np
>>> from scipy.special import ndtri, ndtr
>>> cdf_val = ndtr(2)
>>> cdf_val
0.9772498680518208

验证 ndtri 在浮点误差范围内还原出原始的 x 值。

>>> ndtri(cdf_val)
2.0000000000000004

绘制概率范围内的百分位函数图。

>>> import matplotlib.pyplot as plt
>>> p = np.linspace(1e-3, 1 - 1e-3, 201)
>>> fig, ax = plt.subplots()
>>> ax.plot(p, ndtri(p))
>>> ax.set_title("Standard normal percentile function")
>>> plt.show()
../../_images/scipy-special-ndtri-1.png