📜  Python中的 numpy.random.vonmises()(1)

📅  最后修改于: 2023-12-03 15:19:26.097000             🧑  作者: Mango

Python中的 numpy.random.vonmises()

在Python的numpy库中,有一个随机数生成函数numpy.random.vonmises(),它用于生成符合von Mises分布的随机数。

von Mises分布通常用于描述圆形数据的概率分布,如方向、角度等,它是一个连续性的概率分布。

numpy.random.vonmises()的函数原型如下:

numpy.random.vonmises(mu, kappa, size=None)
  • mu: 随机数的均值,也是分布的中心位置。
  • kappa: 分布的集中程度,越大表示分布越集中,越小表示分布越离散。
  • size: 随机数的输出形状,可以是一个整数或一个元组。

下面是一个简单的例子:

import numpy as np

mu = 0
kappa = 1
size = 1000

# 生成随机数
data = np.random.vonmises(mu, kappa, size)

# 打印均值和标准差
print("mean:", np.mean(data))
print("std:", np.std(data))

上述代码会生成一个大小为1000的样本,其中mu为0,kappa为1。运行结果如下:

mean: -0.00848026641212696
std: 0.9858495507690666

从上面的输出可以看出,我们得到了一个以0为中心,集中程度较高的数据集。这是由于kappa的值为1,表示分布较为集中。

下面列出一些numpy.random.vonmises()函数的常见用法:

1. 生成不同大小的随机数

可以通过设置size参数来生成不同大小的随机数。例如,生成一个大小为(2, 3)的随机数组:

data = np.random.vonmises(mu, kappa, size=(2, 3))
2. 更改分布的集中程度

可以通过更改kappa的值来改变分布的集中程度,例如:

data = np.random.vonmises(mu, 5, size)

这将生成一个以mu为中心,集中程度较高的数据集。

3. 生成不同中心位置的随机数

可以通过更改mu的值来生成不同中心位置的随机数,例如:

data = np.random.vonmises(2, kappa, size)

这将生成一个以2为中心,集中程度为kappa的数据集。

总之,numpy.random.vonmises()是一个十分有用的随机数生成函数,可以用于生成符合von Mises分布的随机数,在处理圆形数据时有很好的应用。