上一个主题

numpy.random.uniform

下一个主题

numpy.random.wald

numpy.random.vonmises

numpy.random.vonmises(mu, kappa, size=None)

从von mises分布中提取样本。

样本是从冯米塞斯分布中提取的,在间隔上具有指定的模式(mu)和分散度(kappa)。 [-pi, pi] .

冯米塞斯分布(又称圆正态分布)是单位圆上的连续概率分布。它可以被认为是正态分布的圆形类似物。

参数:
mu : 浮点数或类似浮点数的数组

分布模式(“中心”)。

卡帕 : 浮点数或类似浮点数的数组

分布的分散度,必须大于等于0。

size : int或int的元组,可选

输出形状。如果给定的形状是,例如, (m, n, k) 然后 m * n * k 取样。如果尺寸是 None (默认),如果 mukappa 都是标量。否则, np.broadcast(mu, kappa).size 取样。

返回:
out : ndarray或scalar

从参数化von mises分布中提取样本。

参见

scipy.stats.vonmises
概率密度函数、分布或累积密度函数等。

笔记

冯米塞斯分布的概率密度是

p(x)=frac e^ kappa cos(x-mu)2p i i_0(kappa),

在哪里? \mu 是模式和 \kappa 分散,以及 I_0(\kappa) 是0阶的修正贝塞尔函数。

米塞斯是以理查德·埃德勒·冯·米塞斯命名的,他出生于奥匈帝国,现在的乌克兰。他于1939年逃到美国,成为哈佛大学的教授。他从事概率论、空气动力学、流体力学和科学哲学。

工具书类

[1]Abramowitz,M.和Stegun,I.A.(编辑)。《数学函数与公式、图表和数学表手册》,第9版,纽约:多佛,1972年。
[2]冯米塞斯,R.,“概率与统计的数学理论”,纽约:学术出版社,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
>>> 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()
../../_images/numpy-random-vonmises-1.png