Spec-Zone.ru › NumPy 1.13

numpy.random.negative_binomial

numpy.random.negative_binomial(n, p, size=None)

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

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

Параметры:

n : int или array_like целых чисел

Параметр распределения, > 0. Также принимаются числа с плавающей точкой, но они будут усечены до целых чисел.

p : float или array_like чисел с плавающей точкой

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

size : int или кортеж из целых чисел, необязательно

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

Возвращает:

out : ndarray или скаляр

Выбранные образцы из параметризованного отрицательного биномиального распределения, где каждый образец равен N, количеству попыток, необходимых для достижения n-1 успехов, N - (n-1) неудач и успеху на (N+n)-й попытке.

Примечания

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

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

где n-1 — количество успехов, p — вероятность успеха, а N+n-1 — количество попыток. Отрицательное биномиальное распределение дает вероятность n-1 успехов и N неудач в N+n-1 попытках и успеха на (N+n)-й попытке.

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

Ссылки

[R248] Weisstein, Eric W. “Negative Binomial Distribution.” From MathWorld–A Wolfram Web Resource. http://mathworld.wolfram.com/NegativeBinomialDistribution.html
[R249] Wikipedia, “Negative binomial distribution”, http://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

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.random.negative_binomial.html

Spec-Zone.ru

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