视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
python如何验证中心极限定理
2020-11-02 17:28:52 责编:小采
文档


python验证中心极限定理的方法:首先模拟随机掷色子1000次观察一下平均值;然后模拟抛十次,并画图看看他们的分布情况;最后模拟1000组,每组抛50次,并取每一组的平均值看分布情况。

python验证中心极限定理的方法:

中心极限定理:

从一个给定的服从任意分布的总体当中,每次抽n个样本,一共抽取m次。然后再对这m各组的值求平均值,各组的平均值会服从近似正态分布。

  • 首先模拟随机掷色子1000次观察一下平均值。
  • import numpy as np
    a = np.random.randint(1,7,1000)print(a)a.mean()

    输出结果:

    可以看到,掷1000次之后取平均值(注意:这个平均值每次策都有微小的不一样,因为是随机抽取的)接近于3.5(3.5=1/6*(1+2+3+4+5+6))。
    然后,再次模拟抛10000次,取平均值

    可以看到,结果越来越接近于3.5

  • 接着模拟抛十次,然后画图看看他们的分布情况
  • sample = []for i in range(10):
     sample.append(a[int(np.random.random()*len(a))]) #从a里面随机抽plt.figure(figsize=(20,10),dpi=100)plt.bar(sample,range(len(sample)))plt.show()


    可见分布不是非常的均匀。

  • 接着模拟1000组,每组抛50次,然后取每一组的平均值看分布情况。
  • sample_mean=[]sample_std=[]samples=[]for i in range(1000):
     sample=[] #每组一个列表
     for j in range(60):
     sample.append(a[int(np.random.random()*len(a))])#模拟抛50次
     sample = np.array(sample) #转化为array数组,便于处理
     sample_mean.append(sample.mean())
     sample_std.append(sample.std())
     samples.append(sample)sample_mean_np = np.array(sample_mean)sample_std_np = np.array(sample_std)print(sample_mean_np)
    plt.figure(figsize=(20,10),dpi=80)d =0.1 num_bins = (max(sample_mean_np)-min(sample_mean_np))//d
    plt.hist(sample_mean_np,num_bins) #绘制频率分布图


    可以看到,每组的平均值是服从正态分布的。

    相关免费学习推荐:python视频教程

    下载本文
    显示全文
    专题