当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy random.mtrand.RandomState.vonmises用法及代码示例


用法:

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

从冯·米塞斯分布中抽取样本。

从间隔为-π,π的特定模式(μ)和分散度(κ)的冯·米塞斯分布中抽取样品。

von Mises分布(也称为圆正态分布)是单位圆上的连续概率分布。可以将其视为正态分布的循环类似物。

参数:
mu float 或 array_like of floats

分发模式(“center”)。

kappa float 或 array_like of floats

分布的色散必须> = 0。

size int 或 tuple of ints, 可选参数

输出形状。如果给定的形状是(m, n, k), 然后m * n * k抽取样品。如果尺寸是None(默认),如果返回一个值mukappa都是标量。除此以外,np.broadcast(mu, kappa).size抽取样品。

返回值:
out ndarray或标量

从参数化的von Mises分布中抽取样本。

注意:

冯·米塞斯分布的概率密度为

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

哪里\mu是模式和\kappa分散,以及I_0(\kappa)是0阶的修改后的Bessel函数。

冯·米塞斯(von Mises)以理查德·埃德勒·冯·米塞斯(Richard Edler von Mises)的名字命名,他出生于现在的乌克兰Austria-Hungary。他于1939年逃往美国,成为哈佛大学的教授。他从事概率论,空气动力学,流体力学和科学哲学的研究。

参考文献:

[1]M. Abramowitz和I.A. Stegun(编辑)。 “带有公式,图形和数学表的数学函数手册,第9次印刷”,纽约:多佛,1972年。
[2]冯·米塞斯(R. von Mises),“概率论和统计学的数学理论”,纽约:学术出版社,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

相关用法


注:本文由纯净天空筛选整理自 numpy.random.mtrand.RandomState.vonmises。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。