在python中绘制3D零均值,单位方差高斯会产生意外结果

大卫·帕克斯

我正在使用具有零均值和单位方差的numpy绘制一组3D高斯样本:

cov =  np.zeros((3,3), dtype=np.float32)
np.fill_diagonal(cov, 1.0)
data_values = np.random.multivariate_normal([0.,0.,0.], cov, size=5000)  # 5000 x 3

我可以绘制每个维度并查看高斯。

我无法绘制完整的3D高斯图,因此为了验证我计算了每个样本data_values到原点的距离(0,0,0)

dist_from_center = np.sqrt(np.sum((data_values)**2, axis=1))      # array of 5000

当我绘制距离的直方图时,我希望看到半高斯,众数为零,但我没有。

谁能看到错误或解释结果?

沃伦·韦克瑟

距中心的距离分布不是半高斯分布。例如,在二维中,分布是瑞利分布莱斯分布的特例)。

这是使用协方差矩阵为恒等的简单情况,对预期分布期望的简要说明。然后高斯的3D外观的PDF喜欢K*exp(-x.dot(x)/2),这里K1/(2*pi)**(1.5)改写x.dot(x)r**2; r是到原点的距离。因此,PDF的行为类似于K*exp(-r**2/2)

现在想象一下围绕原点的薄球形外壳,其半径r和最小厚度dr这个薄壳的“体积”大约为4*pi*r**2*dr这是从原点开始的距离分布中必须包括的全部体积。因此,我们将高斯PDF(表示为的函数r)乘以该球形壳的体积,然后除以dr得到作为的函数的密度r这给了(2*r**2)/sqrt(2*pi)*exp(-r**2/2)(此分布称为Maxwell-Boltzmann分布。)

这是距离的直方图的图,其功能为r

情节

直方图是使用

hist(dist_from_center, bins=25, normed=True)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Go并行中处理数组会产生意外结果

在PostgreSQL中与NULL进行比较会产生意外结果

为什么在Excel中查找会产生意外结果?

使用 "%" 操作会产生意外结果

在VB.NET中以给定大小和X / Y POS绘制圆会产生意外结果

Java中的XOR“ ^”产生意外结果

为什么此python字符序列代码会产生意外结果?

使用python进行二进制读取会产生意外结果

在类实例字典中存储对象会产生意外结果

过滤器中的Servlet转发会产生意外结果

在单击事件中更改 div 的背景颜色会产生意外(或预期?)结果

在PHP中调用(遍历)MySQL行列表会产生意外结果

在PHP中向日期时间添加月份会产生意外结果

为什么MySQL中的Modulo(带有负数)会产生意外结果?

将sympy中的值替换为列表会产生意外的结果

将元素添加到字典中的列表会产生意外的结果 c#

在我的C ++链表实现中取消引用节点指针会产生意外结果

从函数中调用malloc和realloc会产生意外结果

从迭代器中列出列表会产生意外结果

在Java中执行批处理文件会产生意外结果

为什么C中的此函数会产生意外结果?

使用goroutine进行迭代会产生意外结果

减去numpy数组会产生意外结果

在同一模型中注释会产生意外结果

寻路代码会产生意外结果

Moment.js的简单功能会产生意外的(?)结果

为什么“大于”数字比较会产生意外结果

写出文本框会产生意外的结果

日历字段增加会产生意外结果