假设我有以下数字:
4,3,5,6,5,3,4,2,5,4,3,6,5
我对其中一些采样,例如5个,并计算5个采样的总和。然后,我一遍又一遍地重复该操作,以获得许多总和,并在直方图中绘制总和的值,由于中心极限定理,该直方图将为高斯。
但是当他们跟随数字时,我只是用一些大数字代替了4:
4,3,5,6,5,3,10000000,2,5,4,3,6,5
这些样本中的5个样本的采样和不会在直方图中成为高斯,而更像是分裂,变成两个高斯。这是为什么?
假设我有以下数字:
4,3,5,6,5,3,4,2,5,4,3,6,5
我对其中一些采样,例如5个,并计算5个采样的总和。然后,我一遍又一遍地重复该操作,以获得许多总和,并在直方图中绘制总和的值,由于中心极限定理,该直方图将为高斯。
但是当他们跟随数字时,我只是用一些大数字代替了4:
4,3,5,6,5,3,10000000,2,5,4,3,6,5
这些样本中的5个样本的采样和不会在直方图中成为高斯,而更像是分裂,变成两个高斯。这是为什么?
Answers:
让我们精确地回忆一下中心极限定理说的话。
如果是独立且均布的随机变量,且(共享)均值和标准差,则的分布收敛到标准正态分布(*)。
这通常以“非正式”形式使用:
如果是独立的并且具有(共享的)均值和标准偏差均匀分布的随机变量,则 “在分布中”收敛到标准正态分布。
由于“极限”分布会发生变化,因此没有什么好方法可以使CLT的数学形式精确,但是在实践中很有用。
当我们有一个静态的数字列表时
4,3,5,6,5,3,10000000,2,5,4,3,6,5
并且我们正在从此列表中随机抽取一个数字进行采样,以应用中心极限定理,我们需要确保我们的采样方案满足这两个独立性条件且分布均匀。
因此,如果我们在您的方案中使用替换抽样,那么我们应该能够应用中心极限定理。同时,您是对的,如果我们的样本大小为5,那么根据选择的样本数量是否很大,我们将看到非常不同的行为。
那是什么?好吧,收敛到正态分布的速率非常取决于我们从中采样的人口的形状,特别是如果我们的人口非常偏斜,我们希望它需要很长时间才能收敛到正态。在我们的示例中就是这种情况,因此我们不应期望大小为5的样本足以显示正常结构。
在上面,我对5、100和1000大小的样本重复了您的实验(使用替代抽样)。您可以看到,对于非常大的样本,正常结构已经出现。
(*)注意这里需要一些技术条件,例如有限均值和方差。从清单示例中可以很容易地验证它们是真实的。
pop <- c(4, 3, 5, 6, 5, 3, 4, 2, 5, 4, 3, 6, 5)
N <- 10^5
n <- 5
x <- matrix(sample(pop, size = N*n, replace = TRUE), nrow = N)
x_bar <- rowMeans(x)
hist(x_bar, freq = FALSE, col = "cyan")
f <- function(t) dnorm(t, mean = mean(pop), sd = sd(pop)/sqrt(n))
curve(f, add = TRUE, lwd = 2, col = "red")
pop <- c(4, 3, 5, 6, 5, 3, 10000000, 2, 5, 4, 3, 6, 5)
N <- 10^5
n <- 30
x <- matrix(sample(pop, size = N*n, replace = TRUE), nrow = N)
x_bar <- rowMeans(x)
hist(x_bar, freq = FALSE, col = "cyan")
f <- function(t) dnorm(t, mean = mean(pop), sd = sd(pop)/sqrt(n))
curve(f, add = TRUE, lwd = 2, col = "red")
pop <- c(4, 3, 5, 6, 5, 3, 10000000, 2, 5, 4, 3, 6, 5)
N <- 10^5
n <- 100
x <- matrix(sample(pop, size = N*n, replace = TRUE), nrow = N)
x_bar <- rowMeans(x)
hist(x_bar, freq = FALSE, col = "cyan")
f <- function(t) dnorm(t, mean = mean(pop), sd = sd(pop)/sqrt(n))
curve(f, add = TRUE, lwd = 2, col = "red")
简短的答案是,您没有足够大的样本来应用中心极限定理。