Spec-Zone.ru › NumPy 1.20

numpy.random.rayleigh

random.rayleigh(scale=1.0, size=None)

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

Распределения Релея и Вейбулла являются обобщениями.

Примечание

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

Параметры
scalefloat or array_like of floats, optional

Масштаб, также равен моде. Должен быть неотрицательным. По умолчанию равен 1.

sizeint or tuple of ints, optional

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

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

Выборка из распределения Релея с заданными параметрами.

См. также

Generator.rayleigh

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

Примечания

Плотность вероятности распределения Релея:

P(x;scale) = \frac{x}{scale^2}e^{\frac{-x^2}{2 \cdotp scale^2}}

Распределение Релея может возникнуть, например, если составляющие скорости ветра по восточному и северному направлениям имеют одинаковые гауссовы распределения с нулевым средним. Тогда скорость ветра будет иметь распределение Релея.

Литература

1

Brighton Webs Ltd., “Распределение Релея”, https://web.archive.org/web/20090514091424/http://brighton-webs.co.uk:80/distributions/rayleigh.asp

2

Википедия, “Распределение Релея” https://en.wikipedia.org/wiki/Rayleigh_distribution

Примеры

Генерация значений из распределения и построение гистограммы

>>> from matplotlib.pyplot import hist
>>> values = hist(np.random.rayleigh(3, 100000), bins=200, density=True)

Высота волн часто следуют распределению Релея. Если средняя высота волны составляет 1 метр, то какая доля волн, вероятно, будет выше 3 метров?

>>> meanvalue = 1
>>> modevalue = np.sqrt(2 / np.pi) * meanvalue
>>> s = np.random.rayleigh(modevalue, 1000000)

Процент волн, превышающих 3 метра:

>>> 100.*sum(s>3)/1000000.
0.087300000000000003 # random

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

Spec-Zone.ru

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