我有一组不符合正态分布的 A/B 测试结果(一个对照组,一个特征组)。事实上,该分布更接近于朗道分布。
我相信独立 t 检验要求样本至少近似正态分布,这不鼓励我使用 t 检验作为显着性检验的有效方法。
但我的问题是: 在什么时候可以说 t 检验不是显着性检验的好方法?
或者换一种说法,在仅给定数据集的情况下,如何确定 t 检验的 p 值有多可靠?
我有一组不符合正态分布的 A/B 测试结果(一个对照组,一个特征组)。事实上,该分布更接近于朗道分布。
我相信独立 t 检验要求样本至少近似正态分布,这不鼓励我使用 t 检验作为显着性检验的有效方法。
但我的问题是: 在什么时候可以说 t 检验不是显着性检验的好方法?
或者换一种说法,在仅给定数据集的情况下,如何确定 t 检验的 p 值有多可靠?
您的数据分布不需要是正态的,它是采样分布必须接近正态。如果您的样本量足够大,那么由于中心极限定理,朗道分布的均值抽样分布应该接近正态分布。
因此,这意味着您应该能够安全地对数据使用 t 检验。
让我们考虑这个例子:假设我们有一个对数正态分布的种群,mu=0 和 sd=0.5(它看起来有点类似于 Landau)
所以我们每次从这个分布中采样 30 个观测值 5000 次,计算样本的平均值
这就是我们得到的
看起来很正常,不是吗?如果我们增加样本量,它会更加明显
x = seq(0, 4, 0.05)
y = dlnorm(x, mean=0, sd=0.5)
plot(x, y, type='l', bty='n')
n = 30
m = 1000
set.seed(0)
samp = rep(NA, m)
for (i in 1:m) {
samp[i] = mean(rlnorm(n, mean=0, sd=0.5))
}
hist(samp, col='orange', probability=T, breaks=25, main='sample size = 30')
x = seq(0.5, 1.5, 0.01)
lines(x, dnorm(x, mean=mean(samp), sd=sd(samp)))
n = 300
samp = rep(NA, m)
for (i in 1:m) {
samp[i] = mean(rlnorm(n, mean=0, sd=0.5))
}
hist(samp, col='orange', probability=T, breaks=25, main='sample size = 300')
x = seq(1, 1.25, 0.005)
lines(x, dnorm(x, mean=mean(samp), sd=sd(samp)))
基本上使用独立 t 检验或 2 样本 t 检验来检查两个样本的平均值是否显着不同。或者,换句话说,如果两个样本的平均值之间存在显着差异。
现在,这两个样本的平均值是两个统计量,根据 CLT,如果提供足够的样本,它们具有正态分布。请注意,无论构建平均统计量的分布如何,CLT 都有效。
通常可以使用 z 检验,但如果从样本中估计方差(因为它是未知的),则会引入一些额外的不确定性,这些不确定性会包含在 t 分布中。这就是为什么 2 样本 t 检验适用于此的原因。