Spec-Zone.ru › NumPy 1.20

numpy.random.poisson

random.poisson(lam=1.0, size=None)

Генерация случайных чисел из распределения Пуассона.

Распределение Пуассона является пределом биномиального распределения при больших N.

Примечание

Новый код должен использовать метод poisson экземпляра default_rng(); см. Быстрый старт.

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

Математическое ожидание интервала, должно быть >= 0. Последовательность математических ожиданий интервалов должна быть совместимой с запрашиваемым размером.

sizeint or tuple of ints, optional

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

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

Сгенерированные случайные числа из распределения Пуассона с заданными параметрами.

См. также

Generator.poisson

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

Примечания

Распределение Пуассона

f(k; \lambda)=\frac{\lambda^k e^{-\lambda}}{k!}

Для событий с ожидаемой дистанцией \lambda распределение Пуассона f(k; \lambda) описывает вероятность k событий, произошедших в наблюдаемом интервале \lambda.

Поскольку выходные данные ограничены диапазоном типа C int64, возникает исключение ValueError, когда lam находится в пределах 10 сигм от максимального представимого значения.

Ссылки

1

Weisstein, Eric W. “Распределение Пуассона.” Из MathWorld–Wolfram Web Resource. http://mathworld.wolfram.com/PoissonDistribution.html

2

Википедия, «Распределение Пуассона», https://en.wikipedia.org/wiki/Poisson_distribution

Примеры

Генерация случайных чисел из распределения:

>>> import numpy as np
>>> s = np.random.poisson(5, 10000)

Вывод гистограммы сгенерированных данных:

>>> import matplotlib.pyplot as plt
>>> count, bins, ignored = plt.hist(s, 14, density=True)
>>> plt.show()
../../../_images/numpy-random-poisson-1_00_00.png

Генерация 100 значений для lambda 100 и 500:

>>> s = np.random.poisson(lam=(100., 500.), size=(100, 2))

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/random/generated/numpy.random.poisson.html

Spec-Zone.ru

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