中心极限定理是否适用于帕累托分布?

数据挖掘 Python 统计数据
2021-10-13 11:56:16

我是数据科学的新手。最近我在学习一门关于统计学的课程。其中一项任务是在实践中检查中心极限定理。

这个想法很简单:取一个连续的随机变量;例如,从中生成 1000 个样本,每个样本的大小为n绘制样本的直方图。然后利用中心极限定理求正态分布的参数,画出分布的PDF。因此,直方图和 PDF 粗略地说应该是“相似的”(并且随着n增长变得更加“相似”)。

我选择了帕累托分布,并且使用这个 Python 代码,

import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as sts
from math import sqrt

n = 10

b = 3.0
random_value = sts.pareto(b)
mean = random_value.mean()
variance = random_value.var()

plt.hist(samples(random_value, n, 1000), bins=20, normed=True)

x = np.linspace(0, 6, 100)
pdf = sts.norm(mean, sqrt(variance / n)).pdf(x)
plt.plot(x, pdf, color='r', label='theoretical PDF')

samples功能是这样

def samples(random_value, sample_size, number_of_samples):
    result = np.asarray([])
    for i in range(number_of_samples):
        result = np.append(result, np.mean(random_value.rvs(sample_size)))
    return result

结果我得到了下一个直方图和PDF 帕累托分布

结果在我看来很可疑:没有预期的相似性。我用另一个连续分布(均匀分布)检查了相同的代码,图表看起来更加相似。

帕累托分布的一个特征是否使它成为证明中心极限定理如何工作的糟糕选择?还是代码本身有问题(例如,正态分布的参数计算方式错误)?先感谢您。

1个回答

中心极限定理的一个关键假设是方差σ2的基础分布是有限的。我猜你正在使用 Pareto 的参数化σ2=,在这种情况下,CLT 将不成立。如果你调整你的比例参数,这样σ2<你应该看到你想要的结果。