我想在方差分析(固定或混合模型)中进行单 df 正交对比。这里只是一个例子:
require(nlme)
data (Alfalfa)
Variety: a factor with levels Cossack, Ladak, and Ranger
Date : a factor with levels None S1 S20 O7
Block: a factor with levels 1 2 3 4 5 6
Yield : a numeric vector
这些数据在 Snedecor 和 Cochran (1980) 中作为裂区设计的一个例子进行了描述。实验中使用的处理结构为3×4全因子,三个苜蓿品种和4个1943年第三次扦插日期。实验单元分为6个区组,每个区又细分为4个小区。紫花苜蓿品种(Cossac、Ladak 和 Ranger)被随机分配到块中,第三次切割的日期(无、S1-9 月 1 日、S20-9 月 20 日和 O7-10 月 7 日)被随机分配到地块。每个区块都使用了所有四个日期。
model<-with (Alfalfa, aov(Yield~Variety*Date +Error(Block/Date/Variety)))
> summary(model)
Error: Block
Df Sum Sq Mean Sq F value Pr(>F)
Residuals 5 4.15 0.83
Error: Block:Date
Df Sum Sq Mean Sq F value Pr(>F)
Date 3 1.9625 0.6542 17.84 3.29e-05 ***
Residuals 15 0.5501 0.0367
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Error: Block:Date:Variety
Df Sum Sq Mean Sq F value Pr(>F)
Variety 2 0.1780 0.08901 1.719 0.192
Variety:Date 6 0.2106 0.03509 0.678 0.668
Residuals 40 2.0708 0.05177
我想进行一些比较(组内的正交对比),例如对于日期,两个对比:
(a) S1 vs others (S20 O7)
(b) S20 vs 07,
对于品种因素两个对比:
(c) Cossack vs others (Ladak and Ranger)
(d) Ladak vs Ranger
因此,方差分析输出看起来像:
Error: Block
Df Sum Sq Mean Sq F value Pr(>F)
Residuals 5 4.15 0.83
Error: Block:Date
Df Sum Sq Mean Sq F value Pr(>F)
Date 3 1.9625 0.6542 17.84 3.29e-05 ***
(a) S1 vs others ? ?
(b) S20 vs 07 ? ?
Residuals 15 0.5501 0.0367
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Error: Block:Date:Variety
Df Sum Sq Mean Sq F value Pr(>F)
Variety 2 0.1780 0.08901 1.719 0.192
(c) Cossack vs others ? ? ?
(d) Ladak vs Ranger ? ? ?
Variety:Date 6 0.2106 0.03509 0.678 0.668
Residuals 40 2.0708 0.05177
我该怎么做?.....................