大数定理和中心极限定理的粗浅理解

  • 大数定律的意义:随着样本容量n的增加,样本平均数将接近于总体平均数(期望 μ),所以在统计推断中,一般都会使用样本平均数估计总体平均数的值。
  • 也就是我们会使用一部分样本的平均值来代替整体样本的期望/均值,出现偏差 的可能是存在的,但是当n足够大的时候,偏差的可能性是非常小的,当n无限大 的时候,这种可能性的概率基本为0。
  • 大数定律的主要作用就是为使用频率来估计概率提供了理论支持;为使用部分数 据来近似的模拟构建全部数据的特征提供了理论支持。
#大数定理理解展示
import random
import numpy as np 
import matplotlib as mpl 
import matplotlib.pyplot as plt 

#解决显示中文的问题
mpl.rcParams['font.sans_serif'] = [u'SimHei']
mpl.rcParams['axes.unicode_minus'] = False

#给定随机数的种子
random.seed(28)

def generate_random_int(n):
    """产生n个1-9的随机数"""
    return [random.randint(1,9) for i in range(n)]

if __name__ == '__main__':
    number = 8000
    x = [i for i in range(number+1) if i != 0]
    #产生number个1-9的随机数
    total_random_int = generate_random_int(number)
    #求n个[1,9]的随机数的均值,n=1,2,3,4,5...
    y = [np.mean(total_random_int[0:i+1]) for i in range(number)]

    plt.plot(x,y,'b-')
    plt.xlim(0,number)
    plt.grid(True)
    plt.show()
Figure_1.png

当样本数量足够大时,均值接近于5(总体数据的期望值).


中心极限定理(Central Limit Theorem);假设{Xn}为独立同分布的随机变量序 列,并具有相同的期望μ和方差为σ2,则{Xn}服从中心极限定理,且Zn为随机序列{Xn}的范围和:

中心极限定理就是一般在同分布的情况下,抽样样本值的规范和在总体数量趋于
无穷时的极限分布近似于正态分布。

随机的抛六面的骰子,计算三次点数的和的分布:

#大数定理理解展示
import random
import numpy as np 
import matplotlib as mpl 
import matplotlib.pyplot as plt 

#解决显示中文的问题
# mpl.rcParams['font.sans_serif'] = [u'SimHei']
# mpl.rcParams['axes.unicode_minus'] = False

#给定随机数的种子
random.seed(28)

#事件A = x1+x2+x3 ,其中x1,x2,x3是分别抛骰子的点数
#根据中心极限定理,由于x1,x2,x3属于独立同分布,所以说最终的事件A属于高斯分布

def generate_random_int():
   """随机产生一个[1,6]的数字,表示一个六面的骰子的结果"""   
   return random.randint(1,6)

def generate_sum(n):
   """计算返回n次抛骰子的和的结果"""
   return np.sum([generate_random_int() for i in range(n)])

if __name__ == '__main__':
   #进行每次A事件抛几次骰子
   number1 = 10000000
   #表示每次A事件抛几次骰子
   number2 = 3

   #进行number1次事件A的操作,每次事件A都进行number2次
   keys = [generate_sum(number2) for i in range(number1)]

   #统计每个和数字出现的次数,eg:和为3的出现多少次,和为10的出现多少次
   result = {}
   for key in keys:
       count = 1
       if key in result:
           count += result[key]
       result[key] = count

   #获取x和y
   x = sorted(np.unique(list(result.keys())))
   y = []
   for key in x:
       #将出现的次数进行一个百分比的计算
       y.append(result[key]/number1)

   #画图:
   plt.plot(x,y,'b-')
   plt.xlim(x[0] -1 ,x[-1] +1)
   plt.grid(True)
   plt.show()
Figure_2.png

n为3,1-6的平均值为3.5,3μ为10.5,大概就是图中的位置。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 中心极限定理: 1.大量相互独立的随机变量,在采样次数足够大的时候(一般要超过30次以上),其均值或者和的分布以正...
    enhengz阅读 11,648评论 0 1
  • 数据分析方法分为四大类: 1、单纯的数据加工方法 a.描述性统计分析(集中、离中趋势分析和数据分布) b.相关性分...
    重生之魂阅读 2,884评论 0 3
  • 1,中位数:按从小到大排列好的中间值 2,众数:出现次数最多的那个数 3,方差:数值和均值的距离的平方数的平均值 ...
    沈婷_bbf1阅读 5,252评论 1 2
  • 中心极限定理通俗介绍 中心极限定理收敛至大数定律 什么是中心极限定理(Central Limit Theorem)...
    Arya鑫阅读 6,944评论 0 16
  • 作为前数学专业毕业生,学过的概率统计知识已经忘记得差不多了,对于统计学的概念能清楚记得的也只有方差,标准差和均值了...
    Endzzz阅读 19,201评论 2 140