欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

根据中心极限定理利用均匀分布产生正态分布------Python代码

程序员文章站 2022-05-22 15:51:51
...

根据中心极限定理利用均匀分布产生正态分布------Python代码
在本示例中,选择a=0,b=1,这个均匀分布的方差等于(1/12)。

#定义高斯采样函数
def gauss_rand():
    n = 100;
    #均匀产生100个0~1之间的随机数
    u = np.random.uniform(0,1,n)
    r = (sum(u) - n * 0.5) / np.sqrt(n/ 12);
    return r
#使用高斯采样函数进行采样
num = 10000;
for i in range(num):
   x[i] = gauss_rand()
#绘制直方图,显示随机变量的概率分布
bins = np.arange(-10, 10, 0.1)
plt.hist(x, bins=bins)
plt.show()

根据中心极限定理利用均匀分布产生正态分布------Python代码
对应的matlab代码:利用均匀分布和中心极限定理产生正态分布(高斯分布)