4910 4

SAS中多水平的方差分析 [推广有奖]

  • 8关注
  • 2粉丝

讲师

33%

还不是VIP/贵宾

-

威望
0
论坛币
310 个
通用积分
0
学术水平
1 点
热心指数
1 点
信用等级
0 点
经验
15111 点
帖子
218
精华
0
在线时间
379 小时
注册时间
2012-10-31
最后登录
2020-8-31

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
SAS中多水平的方差分析,怎么做,比较三个水平的差异,多谢了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:方差分析 多水平 怎么做

沙发
妖帝东皇 发表于 2013-9-3 19:17:19 |只看作者 |坛友微信交流群
不懂,但是帮你顶贴!
┏━━━━━━━━━━━━━━┓
   ☞❤学而无友必然孤陋寡闻!❤
┗━━━━━━━━━━━━━━┛

使用道具

藤椅
Eternal0601 发表于 2013-9-3 19:36:50 |只看作者 |坛友微信交流群
/*For reference.*/
proc glm data=sasuser.MGGarlic_Block ;
        class Fertilizer Sector;
        model BulbWt=Fertilizer Sector;
        title "ANOVA for Randomized Block Design";
run;
quit;

使用道具

板凳
cjhong111 发表于 2013-9-5 23:08:13 |只看作者 |坛友微信交流群
看了你的提问,觉得和我前段时间做了个医学统计的数据分析很像,一个例子,供你参考:
研究不同的氧浓度(A)和不同的药物(B)对人白血病细胞K562抑制效果,因素A分为A1(含氧3%)和A2(含氧20%),因素B分为B1(表阿霉素)、B2(自制中药)、B3(132Ge)、B4(B1+ B3)、B5(B1+ B2)、B6(B2+ B3)、B7(B1+ B2+ B3);进行2*7析因设计并收集到数据如下,分析A、B两因素对K562细胞抑制的效果。

                B药物
A氧浓度        重复编号        B1        B2        B3        B4        B5        B6        B7
A1((含氧3%))        1        0.31        0.46        0.29        0.49        0.72        0.45        0.19
        2        0.18        0.39        0.18        0.51        0.49        0.42        0.20
        3        0.12        0.40        0.12        0.62        0.55        0.44        0.18
        4        0.13        0.34        0.13        0.53        0.37        0.42        0.17
A2(含氧20%)        1        0.29        0.65        0.87        0.74        1.09        1.04        0.81
        2        0.27        0.84        0.39        0.78        0.73        0.63        1.01
        3        0.29        0.45        0.57        1.45        0.81        1.18        1.18
        4        0.28        0.63        0.64        1.41        0.77        1.45        0.94

解题思路:先对数据进行交互作用分析,若无交互作用,那么分析其主效应就可以了,若主效应有多个水平,那么可以采用means a b/snk进行各个主效应的多水平的比较就可以了;
但是如果存在交互效应的话,分析主效应其意义不大,就需要把A或B控制在不同的水平下,对B或A的各个水平之间进行两两比较。
首先对交互效应的分析:
Sas程序:
data h1;
do a=1 to 2;
do r=1 to 4;
do b=1 to 7;
input x@@;
output;
end;
end;
end;
list;
cards;
0.31        0.46        0.29        0.49        0.72        0.45        0.19
0.18        0.39        0.18        0.51        0.49        0.42        0.20
0.12        0.40        0.12        0.62        0.55        0.44        0.18
0.13        0.34        0.13        0.53        0.37        0.42        0.17
0.29        0.65        0.87        0.74        1.09        1.04        0.81
0.27        0.84        0.39        0.78        0.73        0.63        1.01
0.29        0.45        0.57        1.45        0.81        1.18        1.18
0.28        0.63        0.64        1.41        0.77        1.45        0.94
;
proc anova;
class a b;
model x=a b a*b;
means a b a*b;
run;
经过数据分析,发现存在交互效应,那么采用contrast语句分析一个因素的各个水平在另外一个因素的某一水平下的两两比较;
程序如下:
data h1;
do a=1 to 2;
do r=1 to 4;
do b=1 to 7;
input x@@;
output;
end;
end;
end;
list;
cards;
0.31        0.46        0.29        0.49        0.72        0.45        0.19
0.18        0.39        0.18        0.51        0.49        0.42        0.20
0.12        0.40        0.12        0.62        0.55        0.44        0.18
0.13        0.34        0.13        0.53        0.37        0.42        0.17
0.29        0.65        0.87        0.74        1.09        1.04        0.81
0.27        0.84        0.39        0.78        0.73        0.63        1.01
0.29        0.45        0.57        1.45        0.81        1.18        1.18
0.28        0.63        0.64        1.41        0.77        1.45        0.94
;
proc glm;
class a b;
model x=a b a*b;

contrast'(a1- a2)/b1'
a 1 -1   b*a 1 0 0 0 0 0 0 -1 0 0 0 0 0 0;
contrast'(a1 vs a2)/b2'
a 1 -1   b*a 0 1 0 0 0 0 0 0 -1 0 0 0 0 0;
contrast'(a1 vs a2)/b3'
a 1 -1   b*a 0 0 1 0 0 0 0 0 0 -1 0 0 0 0;
contrast'(a1 vs a2)/b4'
a 1 -1   b*a 0 0 0 1 0 0 0 0 0 0 -1 0 0 0;
contrast'(a1 vs a2)/b5'
a 1 -1   b*a 0 0 0 0 1 0 0 0 0 0 0 -1 0 0;
contrast'(a1 vs a2)/b6'
a 1 -1   b*a 0 0 0 0 0 1 0 0 0 0 0 0 -1 0;
contrast'(a1 vs a2)/b7'
a 1 -1   b*a 0 0 0 0 0 0 1 0 0 0 0 0 0 -1;

contrast'(b1-b7)/a1'
b 1 -1 0 0 0 0 0  a*b 1 -1 0 0 0 0 0 0 0 0 0 0 0 0,
b 1 0 -1 0 0 0 0  a*b 1 0 -1 0 0 0 0 0 0 0 0 0 0 0,
b 1 0 0 -1 0 0 0  a*b 1 0 0 -1 0 0 0 0 0 0 0 0 0 0,
b 1 0 0 0 -1 0 0  a*b 1 0 0 0 -1 0 0 0 0 0 0 0 0 0,
b 1 0 0 0 0 -1 0  a*b 1 0 0 0 0 -1 0 0 0 0 0 0 0 0,
b 1 0 0 0 0 0 -1  a*b 1 0 0 0 0 0 -1 0 0 0 0 0 0 0;

contrast'(b1-b7)/a2'
b 1 -1 0 0 0 0 0  a*b 0 0 0 0 0 0 0 1 -1 0 0 0 0 0,
b 1 0 -1 0 0 0 0  a*b 0 0 0 0 0 0 0 1 0 -1 0 0 0 0,
b 1 0 0 -1 0 0 0  a*b 0 0 0 0 0 0 0 1 0 0 -1 0 0 0,
b 1 0 0 0 -1 0 0  a*b 0 0 0 0 0 0 0 1 0 0 0 -1 0 0,
b 1 0 0 0 0 -1 0  a*b 0 0 0 0 0 0 0 1 0 0 0 0 -1 0,
b 1 0 0 0 0 0 -1  a*b 0 0 0 0 0 0 0 1 0 0 0 0 0 -1;

contrast'(b1-b2)/a1'
b 1 -1 0 0 0 0 0  a*b  1 -1 0 0 0 0 0;
contrast'(b1-b3)/a1'
b 1 0 -1 0 0 0 0  a*b  1 0 -1 0 0 0 0;
contrast'(b1-b4)/a1'
b 1 0 0 -1 0 0 0  a*b  1 0 0 -1 0 0 0;
contrast'(b1-b5)/a1'
b 1 0 0 0 -1 0 0  a*b  1 0 0 0 -1 0 0;
contrast'(b1-b6)/a1'
b 1 0 0 0 0 -1 0  a*b  1 0 0 0 0 -1 0;
contrast'(b1-b7)/a1'
b 1 0 0 0 0 0 -1  a*b  1 0 0 0 0 0 -1;
contrast'(b2-b3)/a1'
b 0 1 -1 0 0 0 0  a*b  0 1 -1 0 0 0 0;
contrast'(b2-b4)/a1'
b 0 1 0 -1 0 0 0  a*b  0 1 0 -1 0 0 0;
contrast'(b2-b5)/a1'
b 0 1 0 0 -1 0 0  a*b  0 1 0 0 -1 0 0;
contrast'(b2-b6)/a1'
b 0 1 0 0 0 -1 0  a*b  0 1 0 0 0 -1 0;
contrast'(b2-b7)/a1'
b 0 1 0 0 0 0 -1  a*b  0 1 0 0 0 0 -1;
contrast'(b3-b4)/a1'
b 0 0 1 -1 0 0 0  a*b  0 0 1 -1 0 0 0;
contrast'(b3-b5)/a1'
b 0 0 1 0 -1 0 0  a*b  0 0 1 0 -1 0 0;
contrast'(b3-b6)/a1'
b 0 0 1 0 0 -1 0  a*b  0 0 1 0 0 -1 0;
contrast'(b3-b7)/a1'
b 0 0 1 0 0 0 -1  a*b  0 0 1 0 0 0 -1;
contrast'(b4-b5)/a1'
b 0 0 0 1 -1 0 0  a*b  0 0 0 1 -1 0 0;
contrast'(b4-b6)/a1'
b 0 0 0 1 0 -1 0  a*b  0 0 0 1 0 -1 0;
contrast'(b4-b7)/a1'
b 0 0 0 1 0 0 -1  a*b  0 0 0 1 0 0 -1;
contrast'(b5-b6)/a1'
b 0 0 0 0 1 -1 0  a*b  0 0 0 0 1 -1 0;
contrast'(b5-b7)/a1'
b 0 0 0 0 1 0 -1  a*b  0 0 0 0 1 0 -1;
contrast'(b6-b7)/a1'
b 0 0 0 0 0 1 -1  a*b  0 0 0 0 0 1 -1;

contrast'(b1-b2)/a2'
b 1 -1 0 0 0 0 0  a*b 0 0 0 0 0 0 0 1 -1 0 0 0 0 0;
contrast'(b1-b3)/a2'
b 1 0 -1 0 0 0 0  a*b 0 0 0 0 0 0 0 1 0 -1 0 0 0 0;
contrast'(b1-b4)/a2'
b 1 0 0 -1 0 0 0  a*b 0 0 0 0 0 0 0 1 0 0 -1 0 0 0;
contrast'(b1-b5)/a2'
b 1 0 0 0 -1 0 0  a*b 0 0 0 0 0 0 0 1 0 0 0 -1 0 0;
contrast'(b1-b6)/a2'
b 1 0 0 0 0 -1 0  a*b 0 0 0 0 0 0 0 1 0 0 0 0 -1 0;
contrast'(b1-b7)/a2'
b 1 0 0 0 0 0 -1  a*b 0 0 0 0 0 0 0 1 0 0 0 0 0 -1;
contrast'(b2-b3)/a2'
b 0 1 -1 0 0 0 0  a*b 0 0 0 0 0 0 0 0 1 -1 0 0 0 0;
contrast'(b2-b4)/a2'
b 0 1 0 -1 0 0 0  a*b 0 0 0 0 0 0 0 0 1 0 -1 0 0 0;
contrast'(b2-b5)/a2'
b 0 1 0 0 -1 0 0  a*b 0 0 0 0 0 0 0 0 1 0 0 -1 0 0;
contrast'(b2-b6)/a2'
b 0 1 0 0 0 -1 0  a*b 0 0 0 0 0 0 0 0 1 0 0 0 -1 0;
contrast'(b2-b7)/a2'
b 0 1 0 0 0 0 -1  a*b 0 0 0 0 0 0 0 0 1 0 0 0 0 -1;
contrast'(b3-b4)/a2'
b 0 0 1 -1 0 0 0  a*b 0 0 0 0 0 0 0 0 0 1 -1 0 0 0;
contrast'(b3-b5)/a2'
b 0 0 1 0 -1 0 0  a*b 0 0 0 0 0 0 0 0 0 1 0 -1 0 0;
contrast'(b3-b6)/a2'
b 0 0 1 0 0 -1 0  a*b 0 0 0 0 0 0 0 0 0 1 0 0 -1 0;
contrast'(b3-b7)/a2'
b 0 0 1 0 0 0 -1  a*b 0 0 0 0 0 0 0 0 0 1 0 0 0 -1;
contrast'(b4-b5)/a2'
b 0 0 0 1 -1 0 0  a*b 0 0 0 0 0 0 0 0 0 0 1 -1 0 0;
contrast'(b4-b6)/a2'
b 0 0 0 1 0 -1 0  a*b 0 0 0 0 0 0 0 0 0 0 1 0 -1 0;
contrast'(b4-b7)/a2'
b 0 0 0 1 0 0 -1  a*b 0 0 0 0 0 0 0 0 0 0 1 0 0 -1;
contrast'(b5-b6)/a2'
b 0 0 0 0 1 -1 0  a*b 0 0 0 0 0 0 0 0 0 0 0 1 -1 0;
contrast'(b5-b7)/a2'
b 0 0 0 0 1 0 -1  a*b 0 0 0 0 0 0 0 0 0 0 0 1 0 -1;
contrast'(b6-b7)/a2'
b 0 0 0 0 0 1 -1  a*b 0 0 0 0 0 0 0 0 0 0 0 0 1 -1;
run;
注意:若a和b之间没有交互作用的话,那么可以分别比较a和b因素下的各个水平之间的差异,程序如下:
data h1;
do a=1 to 2;
do r=1 to 4;
do b=1 to 7;
input x@@;
output;
end;
end;
end;
list;
cards;
0.31        0.46        0.29        0.49        0.72        0.45        0.19
0.18        0.39        0.18        0.51        0.49        0.42        0.20
0.12        0.40        0.12        0.62        0.55        0.44        0.18
0.13        0.34        0.13        0.53        0.37        0.42        0.17
0.29        0.65        0.87        0.74        1.09        1.04        0.81
0.27        0.84        0.39        0.78        0.73        0.63        1.01
0.29        0.45        0.57        1.45        0.81        1.18        1.18
0.28        0.63        0.64        1.41        0.77        1.45        0.94
;
proc glm;
class a b;
model x=a b a*b;
lsmeans a b a*b;
contrast'(a1-a2)'
a 1 -1;
contrast'(b1-b2)'
b 1 -1 0 0 0 0 0;
contrast'(b1-b3)'
b 1 0 -1 0 0 0 0;
contrast'(b1-b4)'
b 1 0 0 -1 0 0 0;
contrast'(b1-b5)'
b 1 0 0 0 -1 0 0;
contrast'(b1-b6)'
b 1 0 0 0 0 -1 0;
contrast'(b1-b7)'
b 1 0 0 0 0 0 -1;
contrast'(b2-b3)'
b 0 1 -1 0 0 0 0;
contrast'(b2-b4)'
b 0 1 0 -1 0 0 0;
contrast'(b2-b5)'
b 0 1 0 0 -1 0 0;
contrast'(b2-b6)'
b 0 1 0 0 0 -1 0;
contrast'(b2-b7)'
b 0 1 0 0 0 0 -1;
contrast'(b3-b4)'
b 0 0 1 -1 0 0 0;
contrast'(b3-b5)'
b 0 0 1 0 -1 0 0;
contrast'(b3-b6)'
b 0 0 1 0 0 -1 0;
contrast'(b3-b7)'
b 0 0 1 0 0 0 -1;
contrast'(b4-b5)'
b 0 0 0 1 -1 0 0;
contrast'(b4-b6)'
b 0 0 0 1 0 -1 0;
contrast'(b4-b7)'
b 0 0 0 1 0 0 -1;
contrast'(b5-b6)'
b 0 0 0 0 1 -1 0;
contrast'(b5-b7)'
b 0 0 0 0 1 0 -1;
contrast'(b6-b7)'
b 0 0 0 0 0 1 -1;
run;
但是显然a和b是有交互作用的,这里写的这种情况是没有交互作用的。
程序看起来很吓人,其实也就是个体力活。
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
jingju11 + 5 + 5 + 5 精彩帖子/虽然不全懂

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

使用道具

报纸
cjhong111 发表于 2013-9-5 23:11:45 |只看作者 |坛友微信交流群
刚才又看了遍楼主的提问,怀疑自己是不是把问题搞复杂了。

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 09:59