Spec-Zone.ru › NumPy 1.19

numpy.random.Generator.negative_binomial

метод

Generator.negative_binomial(n, p, size=None)

Генерация выборок из отрицательного биномиального распределения.

Выборка производится из отрицательного биномиального распределения со заданными параметрами, n успехами и p вероятностью успеха, где n > 0 и p находится в интервале (0, 1].

Параметры
nfloat or array_like of floats

Параметр распределения, > 0.

pfloat or array_like of floats

Параметр распределения. Должно выполняться условие 0 < p ≤ 1.

sizeint or tuple of ints, optional

Форма выходных данных. Если заданная форма, например, (m, n, k), то генерируются m * n * k выборок. Если размерность size равна None (по умолчанию), то возвращается единственное значение, если n и p являются скалярами. В противном случае генерируются np.broadcast(n, p).size выборок.

Возвращаемое значение
outndarray or scalar

Сгенерированные выборки из заданного отрицательного биномиального распределения, где каждая выборка равна N, количеству неудач, произошедших до достижения общего числа n успехов.

Примечания

Функция плотности вероятности отрицательного биномиального распределения:

P(N;n,p) = \frac{\Gamma(N+n)}{N!\Gamma(n)}p^{n}(1-p)^{N},

где n — количество успехов, p — вероятность успеха, N+n — число испытаний, а \Gamma — гамма-функция. Когда n — целое число, \frac{\Gamma(N+n)}{N!\Gamma(n)} = \binom{N+n-1}{N}, что является более распространённой формой этого члена в функции плотности вероятности.

Отрицательное биномиальное распределение даёт вероятность N неудач при наличии n успехов, причём успех достигается на последнем испытании.

Если бросать игральную кость многократно до тех пор, пока не выпадет третья «1», то распределение вероятностей количества бросков, не давших «1», до появления третьей «1», представляет собой отрицательное биномиальное распределение.

Ссылки

1

Weisstein, Eric W. «Отрицательное биномиальное распределение.» Из MathWorld–ресурса Wolfram Web. http://mathworld.wolfram.com/NegativeBinomialDistribution.html

2

Википедия, «Отрицательное биномиальное распределение», https://en.wikipedia.org/wiki/Negative_binomial_distribution

Примеры

Генерация выборок из распределения:

Реальный пример. Компания бурит разведочные нефтяные скважины, каждая из которых имеет предполагаемую вероятность успеха 0,1. Какова вероятность получения одного успеха за каждую последующую скважину, то есть какова вероятность единственного успеха после бурения 5 скважин, после 6 скважин и т. д.?

>>> s = np.random.default_rng().negative_binomial(1, 0.1, 100000)
>>> for i in range(1, 11): 
...    probability = sum(s<i) / 100000.
...    print(i, "wells drilled, probability of one success =", probability)

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/random/generated/numpy.random.Generator.negative_binomial.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API