3

我想使用 ANCOVA 运行,car::Anova但无法确定是否有办法仅将协变量添加为主要效果(即,不应与任何东西交互)。

据我了解 ANCOVA,协变量只是添加到模型中的另一个主要效应(即,另一个效应),从而控制该协变量的整体加性影响。接下来,协变量不与其他因素相互作用。但是,我不能添加Anova不与主体内因素相互作用的变量(即,我的最终模型似乎不是 ANCOVA)。

让我用一个例子来说明我的问题?AnovaOBrienKaiser数据集在 (treatmentgender) 之间有 2 个,在 (和phase)hour因子内有 2 个。现在假设我们还记录了age参与者的 ,并希望将其作为协变量添加到任何分析中。

require(car)
set.seed(1)

n.OBrienKaiser <- within(OBrienKaiser, age <- sample(18:35, size = 16, replace = TRUE))

# the next part is taken from ?Anova
# I only modified the mod.ok <- ... call by adding + age
phase <- factor(rep(c("pretest", "posttest", "followup"), c(5, 5, 5)), levels=c("pretest", "posttest", "followup"))
hour <- ordered(rep(1:5, 3))
idata <- data.frame(phase, hour)

mod.ok <- lm(cbind(pre.1, pre.2, pre.3, pre.4, pre.5, post.1, post.2, post.3, post.4, post.5, 
          fup.1, fup.2, fup.3, fup.4, fup.5) ~  treatment*gender + age, data=n.OBrienKaiser)
(av.ok <- Anova(mod.ok, idata=idata, idesign=~phase*hour, type = 3)) 

如结果所示,结果包含与协变量的交互作用age,即主体内(或重复测量)因素phase及其hour交互作用phase:hour

Type III Repeated Measures MANOVA Tests: Pillai test statistic
                            Df test stat approx F num Df den Df Pr(>F)  
(Intercept)                  1     0.129     1.33      1      9  0.278  
treatment                    2     0.443     3.58      2      9  0.072 .
gender                       1     0.305     3.95      1      9  0.078 .
age                          1     0.054     0.52      1      9  0.490  
treatment:gender             2     0.222     1.28      2      9  0.323  
phase                        1     0.418     2.87      2      8  0.115  
treatment:phase              2     0.871     3.47      4     18  0.029 *
gender:phase                 1     0.084     0.37      2      8  0.703  
age:phase                    1     0.393     2.59      2      8  0.136  
treatment:gender:phase       2     0.545     1.69      4     18  0.197  
hour                         1     0.565     1.95      4      6  0.222  
treatment:hour               2     0.580     0.72      8     14  0.676  
gender:hour                  1     0.310     0.68      4      6  0.633  
age:hour                     1     0.508     1.55      4      6  0.301  
treatment:gender:hour        2     0.707     0.96      8     14  0.504  
phase:hour                   1     0.975     9.56      8      2  0.098 .
treatment:phase:hour         2     1.145     0.50     16      6  0.873  
gender:phase:hour            1     0.693     0.56      8      2  0.770  
age:phase:hour               1     0.974     9.40      8      2  0.100 .
treatment:gender:phase:hour  2     1.314     0.72     16      6  0.723  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

我的问题是:是否可以运行 ANCOVA,car::Anova如果可以,是否可以指定此 ANCOVA 而无需任何交互age


更新(2012 年 7 月 22 日):我在R-help上问过这个问题,但到目前为止没有任何回应。如果有消息,我会在这里发布。

4

1 回答 1

1

我在 R-help 上问了这个问题,这开始了与 John Fox(后来由 Peter Dalgaard 加入)的有益讨论。不幸的是,它被分成了两个线程:

妙语是:“对象内对比由 Anova() 构造为在设计的行基础上是正交的,因此您应该能够安全地忽略(由于某种原因让我无法理解)您的影响不感兴趣。” (约翰福克斯)

所以这个问题的答案是:没有人不能,但这没关系,因为这些相互作用不会改变其他影响,因为它们是正交的。

于 2012-08-10T13:45:50.617 回答