Spec-Zone.ru › NumPy 1.17

numpy.random.mtrand.RandomState.vonmises

метод

RandomState.vonmises(mu, kappa, size=None)

Сгенерировать выборку из распределения фон Мизеса.

Выборка генерируется из распределения фон Мизеса с заданным модом (mu) и дисперсией (kappa) на интервале [-pi, pi].

Распределение фон Мизеса (также известное как круговое нормальное распределение) — это непрерывное распределение вероятностей на единичной окружности. Его можно рассматривать как круговой аналог нормального распределения.

Параметры:
mu : float or array_like of floats

Мода («центр») распределения.

kappa : float or array_like of floats

Дисперсия распределения, должна быть >=0.

size : int or tuple of ints, optional

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

Возвращает:
out : ndarray or scalar

Сгенерированные выборки из параметризованного распределения фон Мизеса.

См. также

scipy.stats.vonmises
функция плотности вероятности, распределение или кумулятивная функция распределения и т.д.

Замечания

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

p(x) = \frac{e^{\kappa cos(x-\mu)}}{2\pi I_0(\kappa)},

где \mu — мода, а \kappa — дисперсия, и I_0(\kappa) — модифицированная функция Бесселя порядка 0.

Распределение фон Мизеса названо в честь Ричарда Эдлера фон Мизеса, родившегося в Австро-Венгрии, в нынешней Украине. Он бежал в Соединенные Штаты в 1939 году и стал профессором Гарварда. Он работал в теории вероятностей, аэродинамике, механике жидкости и философии науки.

Ссылки

[1] Abramowitz, M. and Stegun, I. A. (Eds.). “Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables, 9th printing,” New York: Dover, 1972.
[2] von Mises, R., “Mathematical Theory of Probability and Statistics”, New York: Academic Press, 1964.

Примеры

Сгенерировать выборку из распределения:

>>> mu, kappa = 0.0, 4.0 # mean and dispersion
>>> s = np.random.vonmises(mu, kappa, 1000)

Отобразить гистограмму выборок вместе с функцией плотности вероятности:

>>> import matplotlib.pyplot as plt
>>> from scipy.special import i0  # doctest: +SKIP
>>> plt.hist(s, 50, density=True)
>>> x = np.linspace(-np.pi, np.pi, num=51)
>>> y = np.exp(kappa*np.cos(x-mu))/(2*np.pi*i0(kappa))  # doctest: +SKIP
>>> plt.plot(x, y, linewidth=2, color='r')  # doctest: +SKIP
>>> plt.show()
../../../_images/numpy-random-mtrand-RandomState-vonmises-1.png

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.17.0/reference/random/generated/numpy.random.mtrand.RandomState.vonmises.html

Spec-Zone.ru

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