numpy.random.Generator.vonmises
метод
-
Generator.vonmises(mu, kappa, size=None) -
Генерирует выборки из распределения фон Мизеса.
Выборка осуществляется из распределения фон Мизеса с заданным модой (mu) и дисперсией (kappa) на интервале [-π, π].
Распределение фон Мизеса (также известное как круговое нормальное распределение) — непрерывное вероятностное распределение на единичной окружности. Его можно рассматривать как круговой аналог нормального распределения.
- Параметры
-
-
mufloat or array_like of floats -
Мода («центр») распределения.
-
kappafloat or array_like of floats -
Дисперсия распределения, должна быть ≥ 0.
-
sizeint or tuple of ints, optional -
Форма выходных данных. Если заданная форма, например,
(m, n, k), то генерируетсяm * n * kвыборок. Если размер равенNone(по умолчанию), возвращается одно значение, еслиmuиkappaоба скаляры. В противном случае генерируетсяnp.broadcast(mu, kappa).sizeвыборок.
-
- Возвращаемое значение
-
-
outndarray or scalar -
Сгенерированные выборки из распределения фон Мизеса с заданными параметрами.
-
См. также
-
scipy.stats.vonmises -
функция плотности вероятности, распределение или функция кумулятивной плотности и т. д.
Примечания
Плотность вероятности для распределения фон Мизеса:
где
— мода, а
— дисперсия, и
— модифицированная функция Бесселя нулевого порядка.
Распределение фон Мизеса названо в честь Рихарда Эдлера фон Мизеса, родившегося в Австро-Венгрии, на территории современной Украины. Он бежал в США в 1939 году и стал профессором в Гарварде. Он работал в теории вероятностей, аэродинамике, механики жидкости и философии науки.
Ссылки
-
1 -
Абрамовиц, М. и Стегун, И. А. (ред.). «Справочник по математическим функциям с формулами, графиками и математическими таблицами, 9-е издание», Нью-Йорк: Dover, 1972.
-
2 -
фон Мизес, Р., «Математическая теория вероятностей и статистики», Нью-Йорк: Academic Press, 1964.
Примеры
Генерируем выборки из распределения:
>>> mu, kappa = 0.0, 4.0 # mean and dispersion >>> s = np.random.default_rng().vonmises(mu, kappa, 1000)
Отображаем гистограмму выборок вместе с функцией плотности вероятности:
>>> import matplotlib.pyplot as plt >>> from scipy.special import i0 >>> 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)) >>> plt.plot(x, y, linewidth=2, color='r') >>> plt.show()
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/random/generated/numpy.random.Generator.vonmises.html