iccdf#
- Биномиальное.iccdf(p, /, *, метод=None)[источник]#
Обратная дополнительная кумулятивная функция распределения.
Обратная дополнительная функция распределения («обратная CCDF»), обозначаемая \(G^{-1}(p)\), является аргументом \(x\) для которой дополнительная кумулятивная функция распределения \(G(x)\) вычисляется как \(p\).
\[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.
- метод{None, 'formula', 'complement', 'inversion'}
Стратегия, используемая для вычисления обратной CCDF. По умолчанию (
None), инфраструктура выбирает между следующими вариантами, перечисленными в порядке приоритета.'formula': использовать формулу для самой обратной CCDF'complement': вычислить обратную CDF в дополненииp'inversion': решить численно для аргумента, при котором CCDF равенp
Не все метод опции доступны для всех распределений. Если выбранная метод недоступен,
NotImplementedErrorбудет вызвано исключение.
- Возвращает:
- выходмассив
Обратная CCDF, вычисленная для предоставленного аргумента.
Примечания
Предположим, распределение вероятностей имеет носитель \([l, r]\). Обратная CCDF возвращает свое минимальное значение \(l\) в \(p = 1\) и его максимальное значение \(r\) в \(p = 0\)Поскольку 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])