首页 >后端开发 >Python教程 > 正文

python如何验证中心极限定理

原创2020-10-30 11:51:1401282

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视频教程

以上就是python如何验证中心极限定理的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:python 中心极限定理
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息

    coldplay.xixi

    好好学习 天天向上

    最近文章
    重点详解Java类和对象1406
    浅析php简单操作mysql锁机制3019
    php无法加载mysql怎么办1593
    推荐视频教程
  • Python 基础入门教程Python 基础入门教程
  • Python3.4中文手册Python3.4中文手册
  • 老男孩Python高级运维实战精品进阶视频教程老男孩Python高级运维实战精品进阶视频教程
  • python教程之Django视频教程python教程之Django视频教程
  • Python教程之Tkinter视频教程Python教程之Tkinter视频教程
  • 视频教程分类