作者BugEater (无庸)
看板Statistics
标题Re: [程式] SAS two-way repeated measure ANOVA
时间Sun Oct 20 13:43:42 2013
我不知道是否SAS版本的问题
你的codes我只花了一瞬间就执行完毕
例如,其中的一部分结果如下:
Univariate Tests of Hypotheses for Within Subject Effects
Source DF Type III SS Mean Square F Value
Pr> Adj Pr>F
F G - G H-F-L
day 3 1064.500687 354.833562 192.06
<.0001 <.0001 <.0001
day*A 3 12.526328 4.175443 2.26
0.0896 0.1069 0.0991
day*B 3 90.000687 30.000229 16.24
<.0001 <.0001 <.0001
day*A*B 3 25.410943 8.470314 4.58
0.0056 0.0111 0.0083
Error(day) 66 121.934524 1.847493
关於你另外一个帖子提到two-way anova的HOV test问题,我看到有人是这样做的,
就是另外生成一个新的combo=A*2+B
这样,combo就相当於一个4-level的variable(0 1 2 3)
然後就可以用这个combo来做一个one-way ANOVA,目的是单纯的检查HOV
不过,回到这个实际的数据上面,你的model并非2因子试验,而是3因子试验
只是其中有一个是within factor:day而已,
而在使用proc glm的时候,实际是使用了一种multivariate的方法
这时候会报告两种结果,一种是MANOVA,另外一种是Univariate Tests
这两种结果有时一致,有时可能会有差异,
其实,它们差异的原因乃是assumption的不用
Univariate Tests的assumption就是你迫切想要test的Homogeneous of variance
而MAONVA的前提,则不仅仅不是HOV,甚至连covariance都不需要homogeneous
它是把这些variance都纳入了model的考量之内了。
所以,采用哪种方法,其实是具体看数据,
univariate的model当然最好,因爲model最简化
所以,看起来违反了前提,其实还有前提更松的方法可以使用
当然代价是model的复杂性
其实不管是repeated measure anova 还是MAONVA,都只是multilevel model
(或者叫mixed model, hierarchical linear model等等)的一个特例而已
我们常用的repeated measure anova(指univariate的那种)
就是假定variance matrix是一种compound symmetry的结构
而MANOVA的model,则是假定variance matrix是一种unstruture的结构
这两者一个最简化,一个最复杂,而中间还有很多种可能性
最後,在你所写的codes的基础之上,我提供另外一个方法
就是用了multilevel model
你可以观察一下data是如何组织的,相对於你用的
multivariate的数据形式
我这种是univariate的数据形式
当然本质上是一样的数据
data bac_long;set bac;
time=1;y=d1;output;
time=2;y=d2;output;
time=3;y=d3;output;
time=4;y=d4;output;
drop d1-d4;
run;
proc mixed data=bac_long;
class a b time id;
model y=a b time a*b a*time b*time a*b*time /s;
repreated time/ subject=id r type=cs;
run;
(type=cs:compound symmetry,所以这个model就是
有两个between factors的repeated measure ANOVA)
※ 引述《anovachen ( )》之铭言:
: [软体程式类别]:
: SAS 9.3
: [程式问题]:
: two-way repeated measure ANOVA
: 使用proc glm出现警告讯息
: [软体熟悉度]:
: 高(1年以上)
: [问题叙述]:
: 警告讯息如下:
: NOTE: The Huynh-Feldt epsilon and the corresponding adjusted p-value have
: been enhanced to
: include a correction based on Lecoutre (1991). Use the UEPSDEF=HF
: option on the REPEATED
: statement to revert to the previous definition.
: 之後程式会一直无法结束...
: 直到按下Break键才能强迫中断。
: [程式范例]:
: data bac;
: input id group $ A $ B $ d1 d2 d3 d4;
: cards;
: 1 Con N N 1 3 4 5
: ...略
: 11 A Y N 2 3 4 5
: ...略
: 21 B N Y 2 2 3 3
: ...略
: 31 AB Y Y 1 2 3 4
: ...略
: ;
: proc glm data=bac;
: class A B;
: model d1-d4=A B A*B / nouni;
: repeated day 4 /summary printe ;
: run;
: 即使加入UEPSDEF=CM或=HF都还是有同样的问题(程式无法结束)。
: 只是警告讯息会消失而已= =
: -----------------------------------------------------------------------------
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 129.93.112.57
※ 编辑: BugEater 来自: 129.93.112.57 (10/20 15:41)
※ 编辑: BugEater 来自: 129.93.112.57 (10/20 15:44)