首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >是否有可能使正态分布产生的数字列表的平均值完全为零?

是否有可能使正态分布产生的数字列表的平均值完全为零?
EN

Stack Overflow用户
提问于 2022-06-30 03:49:50
回答 1查看 54关注 0票数 1

因此,即使在由于有限的机器精度而没有误差的情况下,如果从高斯分布中采样的有限个点的数目给出精确的零均值,在数学上也是错误的。要做到这一点,我们确实需要无穷多的点数。

尽管如此,我还是手动地(以一种特殊的方式)试图将分布集中,使平均值为零。对于这个问题,我首先生成一个高斯分布,找出它的平均值,然后用这个平均值移动每个点。通过这样做,我的平均值非常接近于零,但随后我遇到了一个接近机器精度的小值(阶数为10**(-17)),而且我不知道如何使其精确为零。

下面是我使用的代码:

代码语言:javascript
代码运行次数:0
运行
复制
import numpy as np
n=10000
X=np.random.normal(0,1,size=(2,n))[0,:]
Xm=np.mean(X)
print("Xm = ", Xm)
Y=np.random.normal(0,1,size=(2,n))[1,:]
Ym=np.mean(Ym)
print("Ym = ", Y)

for i in range(len(X)):
  X[i]=X[i]-Xm
  Y[i]=Y[i]-Ym

new_X=np.mean(X)
new_Y=np.mean(Y)
print(new_X)
print(new_Y)

Output:
Zreli =  0.002713682499601005
Preli =  -0.0011499576497770079
-3.552713678800501e-18
2.2026824808563105e-17
EN

回答 1

Stack Overflow用户

发布于 2022-06-30 03:57:09

我不擅长代码,但从数学上讲,您可以有一个while循环来检查数字之和,而不是0。如果不是0,你会把1加到你允许的最低单位。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72810121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档