如果我们希望进行配对 t 检验,则要求是(如果我理解正确的话)匹配的测量单位之间的平均差异将呈正态分布。
在配对 t 检验中,这是明确的(AFAIK),要求匹配的测量单位之间的差异将呈正态分布(即使两个比较组中的每一个的分布都不正态)。
但是,在非配对 t 检验中,我们不能谈论匹配单元之间的差异,因此我们要求两组的观察值是正态的,这样它们的均值差就会是正态的。这引出了我的问题:
两个非正态分布是否有可能使得它们的平均值的差异是正态分布的?(因此,据我所知,再次满足我们对它们执行非配对 t 检验的要求)。
更新:(谢谢大家的回答)我看到我们正在寻找的一般规则确实是平均值的差异是正常的,由于 CLT,这似乎是一个很好的假设(在足够大的 n 下)。这对我来说很神奇(并不奇怪,只是很神奇),至于它如何适用于非配对 t 检验,但不适用于单样本 t 检验。这里有一些 R 代码来说明:
n1 <- 10
n2 <- 10
mean1 <- 50
mean2 <- 50
R <- 10000
# diffs <- replicate(R, mean(rexp(n1, 1/mean1)) - mean(runif(n2, 0, 2*mean2)))
# hist(diffs)
P <- numeric(R)
MEAN <- numeric(R)
for(i in seq_len(R))
{
y1 <- rexp(n1, 1/mean1)
y2 <- runif(n2, 0, 2*mean2)
MEAN[i] <- mean(y1) - mean(y2)
P[i] <- t.test(y1,y2)$p.value
}
# diffs <- replicate(R, mean(rexp(n1, 1/mean1)) - mean(runif(n2, 0, 2*mean2)))
par(mfrow = c(1,2))
hist(P)
qqplot(P, runif(R)); abline(0,1)
sum(P<.05) / R # for n1=n2=10 -> 0.0715 # wrong type I error, but only for small n1 and n2 (for larger ones, this effect disappears)
n1 <- 100
mean1 <- 50
R <- 10000
P_y1 <- numeric(R)
for(i in seq_len(R))
{
y1 <- rexp(n1, 1/mean1)
P_y1[i] <- t.test(y1 , mu = mean1)$p.value
}
par(mfrow = c(1,2))
hist(P_y1)
qqplot(P_y1, runif(R)); abline(0,1)
sum(P_y1<.05) / R # for n1=n2=10 -> 0.057 # "wrong" type I error
谢谢。