Python – 中心极限定理
定义:
The sample mean will approximately be normally distributed for large sample sizes, regardless of the distribution from which we are sampling.
假设我们从具有有限均值和有限标准偏差 (sigma) 的总体中抽样。那么样本均值的抽样分布的均值和标准差可以给出为:
在哪里表示每个大小为 n 的样本均值的抽样分布, 和分别是总体的平均值和标准差。
随着样本量的增加,样本的分布趋于正态分布。
代码:中心极限定理的Python实现
python3
import numpy
import matplotlib.pyplot as plt
# number of sample
num = [1, 10, 50, 100]
# list of sample means
means = []
# Generating 1, 10, 30, 100 random numbers from -40 to 40
# taking their mean and appending it to list means.
for j in num:
# Generating seed so that we can get same result
# every time the loop is run...
numpy.random.seed(1)
x = [numpy.mean(
numpy.random.randint(
-40, 40, j)) for _i in range(1000)]
means.append(x)
k = 0
# plotting all the means in one figure
fig, ax = plt.subplots(2, 2, figsize =(8, 8))
for i in range(0, 2):
for j in range(0, 2):
# Histogram for each x stored in means
ax[i, j].hist(means[k], 10, density = True)
ax[i, j].set_title(label = num[k])
k = k + 1
plt.show()
输出:
从图中可以明显看出,随着我们不断将样本量从 1 增加到 100,直方图往往呈正态分布。
经验法则:
当然,“大”这个词是相对的。粗略地说,基本分布越“异常”,n 就必须越大,正态近似值才能正常工作。经验法则是样本大小 n 至少为 30 就足够了。
为什么这很重要?
这个问题的答案很简单,因为我们经常可以使用基于正态分布(例如 68-95-99.7 规则和许多其他规则)的完善的统计推断程序,即使我们从非正态的总体中抽样,前提是我们的样本量很大。