scipy.stats.Mixture.

iccdf#

Mixture.iccdf(p, /, *, method=None)[源代码]#

逆互补累积分布函数。

逆互补累积分布函数(“逆 CCDF”),表示为 \(G^{-1}(p)\),是使互补累积分布函数 \(G(x)\) 的值为 \(p\) 的参数 \(x\)

\[G^{-1}(p) = x \quad \text{s.t.} \quad G(x) = p\]

当互补累积分布函数的严格“逆”不存在时(例如,离散随机变量),“逆 CCDF”按照惯例定义为支持度 \(\chi\) 内的最小值,其中 \(G(x)\) 不大于 \(p\)

\[G^{-1}(p) = \min_\chi \quad \text{s.t.} \quad G(x) ≤ p\]

iccdf 接受 p,其中 \(p \in [0, 1]\)

参数:
parray_like

逆 CCDF 的参数。

method{None, ‘formula’, ‘complement’, ‘inversion’}

用于评估逆 CCDF 的策略。默认情况下 (None),基础设施将在以下选项之间进行选择,并按优先级顺序列出。

  • 'formula':使用逆 CCDF 本身的公式

  • 'complement':在 p 的补集处评估逆 CDF

  • 'inversion':数值求解 CCDF 等于 p 的参数

并非所有 method 选项都适用于所有分布。如果所选的 method 不可用,则会引发 NotImplementedError

返回:
outarray

在提供的参数处评估的逆 CCDF。

另请参阅

icdf
ilogccdf

注释

假设概率分布的支持度为 \([l, r]\)。逆 CCDF 在 \(p = 1\) 处返回其最小值 \(l\),在 \(p = 0\) 处返回其最大值 \(r\)。由于 CCDF 的范围为 \([0, 1]\),因此逆 CCDF 仅在域 \([0, 1]\) 上定义;对于 \(p < 0\)\(p > 1\)iccdf 返回 nan

示例

实例化具有所需参数的分布

>>> import numpy as np
>>> from scipy import stats
>>> X = stats.Uniform(a=-0.5, b=0.5)

在所需的参数处评估逆 CCDF

>>> X.iccdf(0.25)
0.25
>>> np.allclose(X.iccdf(0.25), X.icdf(1-0.25))
True

当参数超出域时,此函数返回 NaN。

>>> X.iccdf([-0.1, 0, 1, 1.1])
array([ nan,  0.5, -0.5,  nan])