SAS方差分析报告.docx
《SAS方差分析报告.docx》由会员分享,可在线阅读,更多相关《SAS方差分析报告.docx(32页珍藏版)》请在冰点文库上搜索。
SAS方差分析报告
四、统计推断Ⅱ(方差分析——多个平均数的比较)
(1)
发布:
admin时间:
2006-8-26
四、统计推断Ⅱ(方差分析——多个平均数的比较)
(1)
方差分析是关于多个平均数的假设测验,其主要做法是将总变异的自由度和平方和剖分为不同来源的自由度和平方和,接着根据各变异来源方差的组成(期望均方)进行F测验,若F测验达显著,当处理效应为固定模型时,可对其处理平均数进行多重比较,当处理效应为随机模型时,可进一步进行方差分量的估计。
方差分析在生物科学领域中应用十分广泛。
用于方差分析的SAS过程主要有方差分析(ANOVA,analysisofvariance)、广义线性模型(GLM,generallinearmodels)。
此外还有方差分量估计(VARCOMP,variancecomponentsestimation)等。
其中ANOVA一般用于平衡资料(资料中各因素均衡搭配且没有发生数据缺失),非平衡资料的分析一般用GLM过程。
不同的试验设计有其相应的线性数学模型,而方差分析正是根据这一线性数学模型进行的,因此所获数据的试验设计决定了其分析方法(即自由度和平方和的分解以及度量各效应是否显著的尺度)。
正是如此,方差分析的SAS程序中模型的确定是关键。
以下结合教材容顺序说明各种情况下的SAS程序编写方法。
(一)单向分组资料(单因素完全随机试验)
1.组观察值数目相等的资料
[例9]以教材P111例6.10为例。
DATAtb611;
DOtrt=1TO5;(或DOtrt=”A”,”B”,”C”,”D”,”E”;)
DOr=1To4;
INPUTy;
OUTPUT;
END;
END;
CARDS;
24302826
27242126
31282530
32333328
21221621
;
PROCANOVA;
CLASStrt;
MODELy=trt;
MEANStrt/DUNCAN;
RUN;
这里PROC前是数据步,使用两套循环(DO…;END;)进行简化数据输入,这是在数据经过整理加工后的方法,当然也可直接按田间(或试验记录)顺序输入,这在后面会看到。
OUTPUT语句用于输出一组观察值,它表明一条记录的结束。
本题利用ANOVA过程。
在PROCANOVA后可加上选项,包括DATA=输入数据集名和OUTSTAT=输出数据集名(用于存储方差分析结果)。
CLASS一句用于指明分类变量,此语句一定要设定,并且应出现在MODEL语句之前。
MODEL语句用于定义分析所用的线性数学模型,通常试验误差项(Error)一项不列。
MEANS语句用于计算效应平均数,并在“/”号后设定多重比较方法、显著水平
以及使用的误差均方。
常用多重比较方法有T或LSD(最小显著差数法或F测验保护下的最小显著差数法)、SNK(q法或NK法)、DUNCAN(Duncan新复极差法)、TUKEY(Q法或Tukey氏固定极差法)、DUNNETT(用于设置于对照试验的DLSD法)等。
显著水平的确定采用alpha=设定,如alpha=0.01等,缺省时为alpha=0.05。
多重比较的误差均方由E=效应给出,如MEANSa/E=a*b,缺省时使用试验分析误差均方。
2.组观察值数目不等的资料
[例10]以教材P113例6.11为例。
DM“LOG;CLEAR;OUTPUT;CLEAR;“;
DATAtb615;
DOrtype=1TO4;
DOr=1TO8;
INPUTy;
OUTPUT;
END;
END;
DROPr;
CARDS;
12
13
14
15
15
16
17
.
14
10
11
13
14
11
.
.
9
2
10
11
12
13
12
11
12
11
10
9
8
10
12
.
;
PROCGLM;
CLASSrtype;
MODELy=rtype;
MEANSrtype/T;
RUN;
由于组观察值数目不等,即出现数据不平衡,故采用GLM过程,“.”号(小数点)代替缺省数据,从这里可见GLM与ANOVA过程在格式上有着相似之处。
本程序的第一行称为显示管理命令,相当于DOS中的批处理命令,它的作用是清除LOG窗和OUTPUT窗中的容;DROPr用于删除变量r,因为r在后面的分析中用不到。
当然,DM和DROP两句都可以不用。
3.系组分组资料
[例11]以教材P116例6.12的二级系统分组资料为例。
DATAtb619;
DOtrt=1TO4;
DOm=1TO3;
DOnop=1TO4;
INPUTy;
OUTPUT;
END;
END;
END;
CARDS;
505540353535304045404050
504550455560505055456555
856090856570806570707070
605535706085457565658575
;
PROCFORMAT;
VALUEtrtv1=”A”2=”B”3=”C”4=”D”;
PROCANOVA;
FORMATtrttrtv.;
CLASStrtm;
MODELy=trtm(trt);
TESTH=trtE=m(trt);
MEANStrt/DUNCANE=m(trt);
RUN;
这是一个系统分组资料,用ANOVA过程,其模型中效应包括培养液的效应(trt)、同一培养液盆间差异[m(trt)],以及同一盆各植株间的差异(即试验误差,在MODEL中不列出)。
MODEL这种定义方式称嵌套模型。
TEST语句指出测验trt的显著性时应使用m(trt)作误差项,若不指明则以试验误差作为被比量进行测验。
因此方差分析表中的trt项F测验不正确,必须使用TEST语句定义被比量进行测验。
对各培养液平均数的多重比较用新复极差法(DUNCAN),且平均数的标准误由m(trt)效应项方差计算。
本程序中还应用了FORMAT过程进行变量格式设定,VALUE则给出具体容,这种设定通过语句“FORMATtrttrtv.;”指定输出格式。
当然格式设定语句可以不要,这里只是为了使处理名称与相应效应直接对应。
五、统计推断Ⅱ(方差分析——多个平均数的比较)
(2)
发布:
admin时间:
2006-8-26
(二)两向分组资料
1.组合只有单个观察值的两向分组资料
(单因素随机区组或二因素完全随机设计)
[例12]以教材P119例6.13为例。
DATAtb625;
DOszs=1TO5;
DOblk=1TO4;
INPUTy;
OUTPUT;
END;
END;
CARDS;
60626160
65656865
63616160
64676361
62656264
61626265
;
PROCANOVA;
CLASSszsblk;
MODELy=szsblk;
MEANSszs/T;
MEANSszs/DUNNETT;
RUN;
本例用ANOVA过程,效应项包括生长素效应和区组效应以及省去的误差。
对生长素效应分别用LSD法和DUNNETT氏最小显著差数法(DLSD法,默认对照是处理项中第一项)进行多重比较。
2.组合有重复的两向分组资料的方差分析(二因素完全随机设计)
[例13]以教材P122例6.14为例。
DATAtb631;
DOa=1TO3;
DOb=1TO3;
DOr=1to3;
INPUTy;
OUTPUT;
END;
END;
END;
CARDS;
21.421.220.119.618.816.417.616.617.5
12.014.212.113.013.712.013.314.013.9
12.813.813.714.213.613.312.014.614.0
;
PROCANOVA;
CLASSab;
MODELy=a|b;
MEANSaba*b/DUNCAN;
RUN;
“MODELy=a|b;”是“MODELy=aba*b;”的简化形式,使用简化形式可使模型语句简洁,以下是一些简化表示法及其所代表的意义:
简化示法
意义
a|b|c
a|b|c2
a|b(a)|c
a|b(a)|c2
a|c(b)
a(b)|c(b)
aba*bca*cb*ca*b*c
aba*bca*cb*c
ab(a)ca*cb*c(a)
ab(a)ca*c
ac(b)a*c(b)
a(b)c(b)a*c(b)
MEANS语句对肥料、土壤及两者互作的平均数进行多重比较。
(三)数据转换
方差分析是在可加性,正态性和同质性的假定下进行的,为了满足这三项假定有时必须对原始数据进行数据转换。
[例14]以P126例6.15为例。
DATAex61;
DOtrt=1to4;
DOr=1TO6;
INPUTy;
yt=ARSIN(SQRT(y/100))*180/3.1415926;
OUTPUT;
END;
END;
CARDS;
979182857877
957772645668
937875766371
706866495564
;
PROCANOVA;
CLASStrt;
MODELyyt=trt;
MEANStrt/DUNNETT;
RUN;
在OUTPUT语句之前对反应量进行转换,即。
六、统计推断Ⅱ(方差分析——多个平均数的比较)(3)
发布:
admin时间:
2006-8-26
(四)单因素试验的分析
1.完全随机试验设计
参见前面单向分组资料的分析方法。
2.随机区组试验设计。
与两向分组资料组合无重复观察值的分析方法一样。
[例15]以P228例12.3为例。
DATAtb123;
DOv=1TO8;
DOblk=1TO3;
INPUTy;
OUTPUT;
END;
END;
CARDS;
10.9
9.1
12.2
10.8
12.3
14.0
11.1
12.5
10.5
9.1
10.7
10.1
11.8
13.9
16.8
10.1
10.6
11.8
10.0
11.5
14.1
9.3
10.4
14.4
;
PROCANOVA;
CLASSvblk;
MODELy=blkv;
MEANSv/Talpha=0.01;
MEANSv/DUNCAN;
RUN;
对品种平均数的多重比较采用LSD法和新复极差法,其中前者采用显著水平
。
3.随机区组试验有缺区时的分析
当出现缺区时,可以先进行缺区估计,再应用ANOVA过程,但更好的方法是直接应用GLM过程。
[例16]以P233例12.4为例。
DATAtb129;
DOtrt=1TO6;
DOblk=1TO4;
INPUTy;
OUTPUT;
END;
END;
CARDS;
27.827.328.538.530.628.8.39.5
27.722.734.936.816.215.014.119.6
16.217.017.715.424.922.522.726.3
;
PROCANOVA;
CLASStrtblk;
MODELy=trtblk;
RUN;
PROCGLM;
CLASStrtblk;
MODELy=trtblk;
MEANStrt/T;
RUN;
缺失区组的数据以小数点“.”代替,采用GLM过程。
注意在有缺失数据时如仍用ANOVA过程则结果会有偏。
教材P234例12.5可以通过同样的方法进行分析。
需要注意的是如果试验的缺失数据太多,则宜将试验作废,否则即使能分析,其结论的可靠性会受到影响。
4.拉丁方试验的统计分析
[例17]以教材P236例12.6为例。
DATAtb1215;
DOr=1TO5;
DOc=1TO5;
INPUTv$y;
OUTPUT;
END;
END;
CARDS;
D37A38C38B44E38
B48E40D36C32A35
C27B32A32E30D26
E28D37B43A38C41
A34C30E27D30B41
;
PROCANOVA;
CLASSrcv;
MODELy=rcv;
MEANSv/T;
MEANSv/DUNCAN;
RUN;
模型中包括行效应,列效应及品种(处理)效应。
[例18]有缺区的拉丁方试验的分析,以教材P239例12.7为例。
DATAtb1222;
DOr=1TO5;
DOc=1TO5;
INPUTv$y;
OUTPUT;
END;
END;
CARDS;
A
14
E
22
D
20
C
18
B
25
D
19
B
21
A
16
E
23
C
18
B
23
A
15
C
20
D
18
E
23
C
21
D
.
E
24
B
21
A
17
E
23
C
16
B
23
A
17
D
20
;
PROCGLM;
CLASSrcv;
MODELy=rcv;
MEANSv/T;
RUN;
5.试验处理的合并比较(单一自由比较)
[例19]以教材P242例12.8为例。
DATAtb611;
DOtrt=”A”,”B”,”C”,”D”,”E”;
DOr=1TO4;
INPUTy;
OUTPUT;
END;
END;
CARDS;
24302826272421263128
25303233332821221621
;
PROCGLM;
CLASStrt;
MODELy=trt;
CONTRAST
”A+B+C+DvsE”
trt
1
1
1
1
-4;
CONTRAST
”A+BvsC+D”
trt
1
1
-1
-1
0;
CONTRAST
”AvsB”
trt
1
-1
0
0
0;
CONTRAST
”CvsD”
trt
0
0
1
-1
0;
RUN;
GLM过程中的CONTRAST语句用于进行试验处理的合并比较,其格式为:
CONTRAST”对比说明”效应对比向量(即正交系数)。
七、统计推断Ⅱ(方差分析——多个平均数的比较)(4)
发布:
admin时间:
2006-8-26
(五)多因素试验的分析
1.二因素随机区组试验
[例20]以教材P249例13.1为例。
DATAtb132;
DOa=1TO3;
DOb=1TO3;
DOblk=1TO3;
INPUTy;
OUTPUT;
END;
END;
END;
CARDS;
888776656
998796876
7768781099
;
PROCANOVA;
CLASSabblk;
MODELy=blkaba*b;
MEANSaba*b/DUNCAN;
RUN;
2.三因素试验的统计分析
(1)三因素完全随机试验
[例21]以教材P253例13.2为例。
DATAtb139;
DOa=1TO3;
DOb=1TO2;
DOc=1TO2;
DOr=1TO5;
INPUTy;
OUTPUT;
END;
END;
END;
END;
CARDS;
16.319.620.418.319.6
15.517.617.318.719.1
30.935.633.232.636.6
28.423.926.024.029.2
18.718.415.117.917.4
15.615.617.817.716.7
28.234.332.126.229.0
27.727.222.318.020.3
18.917.718.015.915.6
16.110.814.715.212.6
40.838.735.141.042.9
27.231.327.129.125.0
;
PROCANOVA;
CLASSabcr;
MODELy=a|b|c;
MEANSabca*ba*cb*c/T;
RUN;
(2)三因素随机区组试验
[例22]以教材P256例13.3为例。
DATAtb1317;
DOa=1TO2;
DOb=1TO2;
DOc=1TO3;
DOblk=1TO3;
INPUTy;
OUTPUT;
END;
END;
END;
END;
CARDS;
1214131211111099
1099998667
324434767
223345577
;
PROCANOVA;
CLASSabcblk;
MODELy=blka|b|c;
MEANSabc/T;
MEANSa*ba*cb*c/T;
RUN;
从MODEL语句可以看出三因素随机区组试验只是在三因素完全随机试验基础上通过设置区组将可能存在的区组效应(blk)从误差中分离出来。
3.裂区试验
(1)二裂式试验
[例23]以教材P262例13.4为例。
DATAtb1324;
DOa=1TO3;
DOb=1TO4;
DOblk=1TO3;
INPUTy;
OUTPUT;
END;
END;
END;
CARDS;
292832373231181417171615
282925312829131310131212
302726312831151411161513
;
PROCANOVA;
CLASSabblk;
MODELy=blkaa*blkba*b;
TESTH=aE=a*blk;
TESTH=blkE=a*blk;
MEANSa/DUNCANE=a*blk;
MEANSba*b/DUNCAN;
RUN;
二裂式试验的总变异可分解为:
区组的(blk)、主处理的(a)、Ea(a*blk)、副处理(b)、处理因素的互作(a*b)及Eb(即试验误差,在MODEL语句中省去)。
对主处理效应(a)和区组效应(blk)的F测验需用TEST语句指定误差项(a*blk)。
总的方差分析表中的该两项的F测验是以Eb为尺度的,因而是错误的。
同理,对主处理的多重比较也应加上选项E=a*blk。
(2)有缺区的二裂式试验
[例24]以教材P266例13.5为例。
DATAtb1329;
DOa=1TO3;
DOb=1TO4;
DOblk=1TO3;
INPUTy;
OUTPUT;
END;
END;
END;
CARDS;
.2832373231181417171615
282925312829131310131212
302726312831151411161513
;
PROCGLM;
CLASSabblk;
MODELy=blkaa*blkba*b;
TESTH=aE=a*blk;
TESTH=blkE=a*blk;
MEANSa/DUNCANE=a*blk;
MEANSba*b/DUNCAN;
RUN;
4.条区设计
[例25]以教材P270例13.7为例。
DATAfig134;
DOblk=1TO6;
INPUTa$b$y;
OUTPUT;
END;
CARDS;
A1B2376A1B3386A1B1355
A3B2455A3B3476A3B1433
A2B2480A2B3496A2B1446
A2B1549A2B3533A2B2540
A1B1396A1B3388A1B2406
A3B1492A3B3482A3B2512
A2B2500A2B3482A2B1513
A1B2347A1B3337A1B1387
A3B2468A3B3435A3B1476
A2B3413A2B1469A2B2436
A3B3334A3B1436A3B2398
A1B3201A1B1298A1B2280
A3B1458A3B3413A3B2434
A1B1366A1B3333A1B2356
A2B1474A2B3425A2B2465
A2B3490A2B2509A2B1502
A3B3447A3B2473A3B1487
A1B3348A1B2356A1B1397
;
PROCANOVA;
CLASSblkab;
MODELy=blkaa*blkbb*blka*b;
TESTH=aE=a*blk;
TESTH=bE=b*blk;
MEANSa/TE=a*blk;
MEANSb/TE