scipy.stats.Uniform.

icdf#

Равномерное.icdf(p, /, *, метод=None)[источник]#

Обратная функция распределения.

Для монотонных непрерывных распределений обратная функция кумулятивного распределения («обратная CDF»), обозначаемая \(F^{-1}(p)\), является аргументом \(x\) для которого функция распределения \(F(x)\) вычисляется как \(p\).

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

Когда строгий «обратный» функции кумулятивного распределения не существует (например, для дискретных случайных величин), «обратная CDF» по соглашению определяется как наименьшее значение в пределах носителя \(\chi\) для которого \(F(x)\) составляет не менее \(p\).

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

icdf принимает p для \(p \in [0, 1]\).

Параметры:
parray_like

Аргумент обратной функции распределения.

метод{None, 'formula', 'complement', 'inversion'}

Стратегия, используемая для вычисления обратной CDF. По умолчанию (None), инфраструктура выбирает между следующими вариантами, перечисленными в порядке приоритета.

  • 'formula': использование формулы для самой обратной CDF

  • 'complement': вычисление обратной CCDF в дополнении к p

  • 'inversion': численное решение для аргумента, при котором CDF равна p

Не все метод опции доступны для всех распределений. Если выбранная метод недоступен, NotImplementedError будет вызвано исключение.

Возвращает:
выходмассив

Обратная функция распределения, вычисленная для заданного аргумента.

Смотрите также

cdf
ilogcdf

Примечания

Предположим, распределение вероятностей имеет носитель \([l, r]\). Обратная функция распределения возвращает свое минимальное значение, равное \(l\) в \(p = 0\) и его максимальное значение \(r\) в \(p = 1\). Поскольку CDF имеет диапазон \([0, 1]\), обратная CDF определена только на области \([0, 1]\); для \(p < 0\) и \(p > 1\), icdf возвращает nan.

Обратная функция распределения также известна как квантильная функция, функция процентилей и функция процентных точек.

Ссылки

[1]

Квантильная функция, Википедия, https://en.wikipedia.org/wiki/Quantile_function

Примеры

любым из целых чисел в полуоткрытом диапазоне

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

Вычислить обратную CDF при заданном аргументе:

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

Эта функция возвращает NaN, когда аргумент находится вне области определения.

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