中心极限定理python验证

中心极限定理

第一种中心极限定理:独立同分布的中心极限定理

image.png

以上表来理解定理,是每个分布的对应元素求平均组成的分布(黄色部分),当分布个数足够多时,均值分布为正态分布

# 以均匀分布为例理解定理
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# 500个均匀分布,每个分布1w个元素,Xi~U(-500, 500),均值为0,方差为(500+500)^2/12,所以最终得到的均值分布的均值0,方差为(500+500)^2/12/500
a = []
for i in range(500):
    a.append(np.random.uniform(-500, 500, 10000))
a = np.array(a)
# 切成离散数据用于画图,因为Var=166.6,所以σ=12.9,所以box的范围给了3σ左右
box = list(np.arange(-50, 50, 1))
b = a.mean(axis=0)
b = pd.Series(b) 
en = box.copy()
en.pop(-1)
c = pd.cut(b, bins=box, labels=en).value_counts().sort_index()

plt.figure(figsize=(30, 8))
plt.bar(c.index, c, )
image2.png

可以看出基本服从正态分布

  • 第二种中心极限定理:李雅普诺夫定理


    image2.png
# 使用不同的均匀分布做测试
a = []
for i in range(500):
    a.append(np.random.uniform(i-500, i+500, 10000))
a = np.array(a)
# 每个均匀分布均值=i,我求均值后得到的分布,这个分布的期望就是各个分布的均值的均值,为250
box = list(np.arange(200, 300, 1))
b = a.mean(axis=0)
b = pd.Series(b)
en = box.copy()
en.pop(-1)
c = pd.cut(b, bins=box, labels=en).value_counts().sort_index()

plt.figure(figsize=(30, 8))
plt.bar(c.index, c)
image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容