Spec-Zone.ru › NumPy 1.18

numpy.random.rayleigh

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

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

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

Примечание

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

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

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

sizeint or tuple of ints, optional

Форма выходных данных. Если заданная форма, например, (m, n, k), то генерируются m * n * k выборок. Если size равно 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

Wikipedia, “Распределение Рейли” 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–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/random/generated/numpy.random.rayleigh.html

Spec-Zone.ru

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