Spec-Zone.ru › NumPy 1.19

numpy.random.RandomState.negative_binomial

метод

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

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

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

Примечание

Новый код должен использовать метод negative_binomial экземпляра default_rng(), см. random-quick-start.

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

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

pfloat or array_like of floats

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

sizeint or tuple of ints, optional

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

Возвращает
outndarray or scalar

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

См. также

Generator.negative_binomial

который следует использовать в новом коде.

Примечания

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

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.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.RandomState.negative_binomial.html

Spec-Zone.ru

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