绘制中心极限定理

练习:中心极限定理

#coding:utf-8
#/usr/bin/python
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt


if __name__ == '__main__':
    mpl.rcParams['font.sans-serif'] = [u'SimHei']
    mpl.rcParams['axes.unicode_minus'] = False  # win正常显示中文设置

    t = 1000 #次数
    a = np.zeros(10000) #生成10000个0的数组
    for i in range(t):
        a += np.random.uniform(-5, 5, 10000)
    a /= t
    #for循环首先生成(-5,5)的10000个随机数加到a中,然后做t次,
    #最后的a每一维上的数都是加了1000个(-5,5)的随机数
    #然后除以t,得到这1000个随机数的平均值
    plt.figure(figsize=(5,5),facecolor='w')
    plt.hist(a,bins=30,color='b',alpha = 0.5,normed=True,label='均匀分布叠加')
    plt.grid()
    plt.legend(loc='upper right')
    plt.show()

拓展

    lamda = 7
    p = stats.poisson(lamda)
    y = p.rvs(size=1000)#对p随机采样1000次
    mx = 30
    r = (0, mx)#直方图的宽度参数
    bins = r[1] - r[0]#均分多少份
    plt.figure(figsize=(15, 8), facecolor='w')
    plt.subplot(121)
    plt.hist(y, bins=bins, range=r, color='g', alpha=0.8, normed=1)
    t = np.arange(0, mx+1)
    plt.plot(t, p.pmf(t), 'ro-', lw=2)#取(0,30)的概率质量函数,也就是(0,30)中的数每一个数出现的次数
    plt.grid(True)

    N = 1000
    M = 10000
    plt.subplot(122)
    a = np.zeros(M, dtype=np.float)
    p = stats.poisson(lamda)
    for i in np.arange(N):
        a += p.rvs(size=M)#对p进行1000随机采样,每次采取10000个数字
    a /= N
    plt.hist(a, bins=20, color='g', alpha=0.8, normed=True)
    plt.grid(b=True)
    plt.show()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 中心极限定理通俗介绍 中心极限定理收敛至大数定律 什么是中心极限定理(Central Limit Theorem)...
    Arya鑫阅读 7,210评论 0 16
  • 中心极限定理是统计学中比较重要的一个定理。 本文将通过实际模拟数据的形式,形象地展示中心极限定理是什么,是如何发挥...
    朱曦炽阅读 30,572评论 4 34
  • 楚子航,你还要多久才会回?
    回眸俯视天下阅读 715评论 0 2
  • 夜已深,可还有很多人仍旧不能睡。有的人的手指在手机上飞舞着,刷着各种的微博,微信;有的人的手指在电脑的键盘上飞舞着...
    白鹤清阅读 328评论 1 0
  • 又一天的清晨,伴随着闹钟的声音,开始了新的一天。这个时候,往往是我最想离开的时候,在被窝躺着,都会感觉冻脸是一种什...
    Neysazh阅读 158评论 0 1

友情链接更多精彩内容