我们知道配对t检验只是单向重复测量(或对象内)方差分析以及线性混合效应模型的特例,可以用 lme() 函数和 R 中的 nlme 包来证明如下所示。
#response data from 10 subjects under two conditions
x1<-rnorm(10)
x2<-1+rnorm(10)
# Now create a dataframe for lme
myDat <- data.frame(c(x1,x2), c(rep("x1", 10), rep("x2", 10)), rep(paste("S", seq(1,10), sep=""), 2))
names(myDat) <- c("y", "x", "subj")
当我运行以下配对 t 检验时:
t.test(x1, x2, paired = TRUE)
我得到了这个结果(由于随机生成器,你会得到不同的结果):
t = -2.3056, df = 9, p-value = 0.04657
使用 ANOVA 方法,我们可以得到相同的结果:
summary(aov(y ~ x + Error(subj/x), myDat))
# the F-value below is just the square of the t-value from paired t-test:
Df F value Pr(>F)
x 1 5.3158 0.04657
现在我可以使用以下模型在 lme 中获得相同的结果,假设两个条件的正定对称相关矩阵:
summary(fm1 <- lme(y ~ x, random=list(subj=pdSymm(form=~x-1)), data=myDat))
# the 2nd row in the following agrees with the paired t-test
# (Intercept) -0.2488202 0.3142115 9 -0.7918878 0.4488
# xx2 1.3325786 0.5779727 9 2.3056084 0.0466
或者另一个模型,假设两个条件的相关矩阵具有复合对称性:
summary(fm2 <- lme(y ~ x, random=list(subj=pdCompSymm(form=~x-1)), data=myDat))
# the 2nd row in the following agrees with the paired t-test
# (Intercept) -0.2488202 0.4023431 9 -0.618428 0.5516
# xx2 1.3325786 0.5779727 9 2.305608 0.0466
通过配对 t 检验和单向重复测量方差分析,我可以将传统的细胞均值模型写为
Yij = μ + αi + βj + εij, i = 1, 2; j = 1, ..., 10
其中 i 索引条件,j 索引主题,Y ij是响应变量,μ 是整体平均值的固定效应的常数,α i是条件的固定效应,β j是 N(0, σ 之后的主题的随机效应p 2 )(σ p 2是总体方差),ε ij是 N(0, σ 2 ) 之后的残差(σ 2是主体内方差)。
我认为上面的单元平均模型不适合 lme 模型,但问题是我无法为具有相关结构假设的两种 lme() 方法提出合理的模型。原因是 lme 模型似乎比上面提供的单元平均模型具有更多的随机分量参数。至少 lme 模型也提供了完全相同的 F 值、自由度和 p 值,而 gls 不能。更具体地说,gls 给出了不正确的 DF,因为它没有考虑每个受试者有两个观察结果的事实,从而导致 DF 大大膨胀。lme 模型很可能在指定随机效应时过度参数化,但我不知道模型是什么以及参数是什么。所以这个问题对我来说仍然没有解决。