ANOVA模型拟合


  • aov()
aov()函数的语法为
aov(formual,data=dataframe)
 y是因变量,字母A、B、C表明因子                                                                 
                                                                       R 表达式中的特殊符号
符号 用法
~ 分隔符号,左边为响应变量,右边为解释变量,如用A、B、C预测y,代码为 y~ A + B +C
表示变量的交互项。例如,用A、B和A与B的交互项来预测 y, 代码 y~ A + B + A:B
* 表示全部可能交互项,代码 y~A*B*C可展开为 y~ A + B +C+ A:B + B:C +A:B:C
^ 表示交互项达到某个次数。代码 y~(A+B+C)^2可展开为 y~A +B +C+ A:B +A:C +B:C
.(英文句号) 表示包含除因变量外的全部变量。如,某个数据框包含变量 y、A、B和C,代码 y~. 可展现为y~A +B +C

常见的研究设计表达式 ,小写字母表示定量变量,大写字母表示组别因子,Subject是被试着独有的标识变量
                                                                 
                          常见研究设计的表达式
设计 表达式
单因素ANOVA y ~ A
含单个协变量的单因素 ANCOVA y ~ x + A
双因素 ANOVA y ~ A * B
含两个协变量的双因素 ANCOVA y ~ x1 + x2 + A*B
随机化区组 y ~ B + A(B 是区组因子)
单因素组内 ANOVA y ~ A + Error(Subject / A)
含单个组内因子(W)和单个组间因子(B)的重复测量ANOVA y ~ B * W + Error(Subject/W)

  • 表达式中各项的顺序
 表达式中效应顺序在两种状况会形成影响
a、因子不止一个,而且非平衡设计
b、存在协变量  , 协变量的概念
如对于双因素方差分析,若不一样的处理方式中观测数不一样,那么模型 y ~ A*B 与 y~B*A 的结果不一样

R 默认类型Ⅰ(序贯型)方法计算ANOVA效应,第一个模型:y ~ A + B +A:B 。R中的 ANOVA 表的结果将评价:
一、A 对 y 的控制
二、控制 A 时, B 对 y 的影响
三、控制 A 和 B 的主效应时,A与B的交互效应

  • 表达式顺序类型
当自变量与其余自变量或者协变量相关时,没有明确的方法能够评价自变量对因变量的贡献
例如:含因子A、B和因变量 y 的双因素不平衡因子设计,有三种效应: A 和 B 主效应,A 和 B的交互效应,假设正使用以下表达式对数据进行建模
 y ~ A + B + A:B
有三种方法能够分解等式右边各效应对 y 的解释的方差
  • 类型Ⅰ(序贯型) 
效应根据表达式中线出现的效应作调整,A不作调整,B根据A调整,A:B交互项根据 A 和 B 调整

  • 类型Ⅱ(分层型)
效应根据同水平或低水平的效应作调整,A 根据 B调整,B 根据A调整,A:B交互项同时根据 A 和 B 调整

  • 类型Ⅲ(边界型)
每一个效应根据模型其余各效应作相应的调整, A 根据 B和 A:B调整,A:B交互项根据 A和B 调整

R 默认调用类型 Ⅰ 方法,其余软件(好比 SAS 和 SPSS)默认调用类型Ⅲ方法

样本大小越不平衡,效应项的顺序对结果的影响越大。通常来讲,越基础性的效应越须要放在表达式前面,具体来说,首先是协变量,而后是主效应,接着是双因素的交互项,再接着是三因素的交互项,以此类推。
对于主效应,越基础性的变量越应放在表达式前面,所以性别要放在处理方式以前,有一个基本的准则:若研究设计不是正交(也就是说,因子或协方变量相关),必定要谨慎设置效应的顺序

注意
car包中的Anova() 函数提供了使用类型Ⅱ和类型Ⅲ方法的选项,而 aov() 函数使用的是类型Ⅰ方法。
若想使结果与其余软件(如SAS和SPSS)提供的结果一致,可使用 Anova()函数,细节可参考help(Anova,package="car")
相关文章
相关标签/搜索