实用标准文档
四、统计推断Ⅱ(方差分析——多个平均数的比较)(1)
发布:admin 时间:2006-8-26
四、统计推断Ⅱ(方差分析——多个平均数的比较)(1)
方差分析是关于多个平均数的假设测验,其主要做法是将总变异的自由度和平方和剖分为不同来源的自由度和平方和,接着根据各变异来源方差的组成(期望均方)进行F测验,若F测验达显著,当处理效应为固定模型时,可对其处理平均数进行多重比较,当处理效应为随机模型时,可进一步进行方差分量的估计。
方差分析在生物科学领域中应用十分广泛。用于方差分析的SAS过程主要有方差分析(ANOVA,analysis of variance)、广义线性模型(GLM,general linear models)。此外还有方差分量估计(VARCOMP,variance components estimation)等。其中ANOVA一般用于平衡资料(资料中各因素均衡搭配且没有发生数据缺失),非平衡资料的分析一般用GLM过程。
不同的试验设计有其相应的线性数学模型,而方差分析正是根据这一线性数学模型进行的,因此所获数据的试验设计决定了其分析方法(即自由度和平方和的分解以及度量各效应是否显著的尺度)。正是如此,方差分析的SAS程序中模型的确定是关键。以下结合教材内容顺序说明各种情况下的SAS程序编写方法。
(一) 单向分组资料(单因素完全随机试验)
1.组内观察值数目相等的资料
[例9] 以教材P111例6.10为例。 DATA tb611;
DO trt=1 TO 5; (或DO trt=”A”,”B”,”C”,”D”,”E”; ) DO r=1 To 4; INPUT y @@; OUTPUT; END; END; CARDS;
24 30 28 26 27 24 21 26 31 28 25 30 32 33 33 28 21 22 16 21 ;
PROC ANOVA; CLASS trt; MODEL y=trt;
MEANS trt/DUNCAN; RUN;
文案大全
实用标准文档
这里PROC前是数据步,使用两套循环(DO…; END;)进行简化数据输入,这是在数据经过整理加工后的方法,当然也可直接按田间(或试验记录)顺序输入,这在后面会看到。OUTPUT语句用于输出一组观察值,它表明一条记录的结束。本题利用ANOVA过程。在PROC ANOVA后可加上选项,包括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=效应给出,如MEANS a/E=a*b,缺省时使用试验分析误差均方。
2.组内观察值数目不等的资料
[例10] 以教材P113例6.11为例。 DM “LOG;CLEAR;OUTPUT;CLEAR;“; DATA tb615;
DO rtype=1 TO 4; DO r=1 TO 8; INPUT y @@; OUTPUT; END; END; DROP r; 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 . ;
PROC GLM;
CLASS rtype; MODEL y=rtype; MEANS rtype /T; RUN;
由于组内观察值数目不等,即出现数据不平衡,故采用GLM过程,“.”号(小数点)代替缺省数据,从这里可见GLM与ANOVA过程在格式上有着相似之处。本程序的第一行称为显示管理命令,相当于DOS中的批处理命令,它的作用是清除LOG窗和OUTPUT窗中的内容;DROP r 用于删除变量r,因为r在后面的分析中用不到。当然,DM和DROP两句都可以不用。
3.系组分组资料
[例11] 以教材P116例6.12的二级系统分组资料为例。
文案大全
实用标准文档
DATA tb619;
DO trt=1 TO 4; DO m=1 TO 3;
DO nop=1 TO 4; INPUT y@@; OUTPUT; END; END; END; CARDS;
50 55 40 35 35 35 30 40 45 40 40 50 50 45 50 45 55 60 50 50 55 45 65 55 85 60 90 85 65 70 80 65 70 70 70 70 60 55 35 70 60 85 45 75 65 65 85 75 ;
PROC FORMAT;
VALUE trtv 1=”A” 2=”B” 3=”C” 4=”D”; PROC ANOVA;
FORMAT trt trtv.; CLASS trt m;
MODEL y=trt m(trt); TEST H=trt E=m(trt);
MEANS trt / DUNCAN E=m(trt); RUN;
这是一个系统分组资料,用ANOVA过程,其模型中效应包括培养液的效应(trt)、同一培养液内盆间差异[m(trt)],以及同一盆内各植株间的差异(即试验误差,在MODEL中不列出)。MODEL这种定义方式称嵌套模型。
TEST语句指出测验trt的显著性时应使用m(trt)作误差项,若不指明则以试验误差作为被比量进行测验。因此方差分析表中的trt项F测验不正确,必须使用TEST语句定义被比量进行测验。
对各培养液平均数的多重比较用新复极差法(DUNCAN),且平均数的标准误由m(trt)效应项方差计算。
本程序中还应用了FORMAT过程进行变量格式设定,VALUE则给出具体内容,这种设定通过语句“FORMAT trt trtv.;”指定输出格式。当然格式设定语句可以不要,这里只是为了使处理名称与相应效应直接对应。
文案大全
实用标准文档
五、统计推断Ⅱ(方差分析——多个平均数的比较)(2)
发布:admin 时间:2006-8-26
(二) 两向分组资料
1.组合内只有单个观察值的两向分组资料 (单因素随机区组或二因素完全随机设计) [例12] 以教材P119例6.13为例。 DATA tb625;
DO szs=1 TO 5; DO blk=1 TO 4; INPUT y @@; OUTPUT; END; END; CARDS;
60 62 61 60 65 65 68 65 63 61 61 60 64 67 63 61 62 65 62 64 61 62 62 65 ;
PROC ANOVA;
CLASS szs blk; MODEL y=szs blk; MEANS szs / T; MEANS szs/DUNNETT; RUN;
本例用ANOVA过程,效应项包括生长素效应和区组效应以及省去的误差。对生长素效应分别用LSD法和DUNNETT氏最小显著差数法(DLSD法,默认对照是处理项中第一项)进行多重比较。
2.组合内有重复的两向分组资料的方差分析(二因素完全随机设计) [例13] 以教材P122例6.14为例。 DATA tb631; DO a=1 TO 3; DO b=1 TO 3; DO r=1 to 3; INPUT y @@; OUTPUT; END; END; END; CARDS;
文案大全
实用标准文档
21.4 21.2 20.1 19.6 18.8 16.4 17.6 16.6 17.5 12.0 14.2 12.1 13.0 13.7 12.0 13.3 14.0 13.9 12.8 13.8 13.7 14.2 13.6 13.3 12.0 14.6 14.0 ;
PROC ANOVA; CLASS a b; MODEL y= a | b;
MEANS a b a*b / DUNCAN; RUN;
“MODEL y=a | b;”是“MODEL y=a b a*b;”的简化形式,使用简化形式可使模型语句简洁,以下是一些简化表示法及其所代表的意义:
简化示法 意 义 a | b | c a b a*b c a*c b*c a*b*c a | b | c @ 2 a b a*b c a*c b*c a | b(a) | c a b(a) c a*c b*c(a) a | b(a) | c @ 2 a b(a) c a*c a | c(b) a c(b) a*c(b) a(b) | c(b) a(b) c(b) a*c(b)
MEANS语句对肥料、土壤及两者互作的平均数进行多重比较。
(三) 数据转换
方差分析是在可加性,正态性和同质性的假定下进行的,为了满足这三项假定有时必须对原始数据进行数据转换。
[例14] 以P126例6.15为例。 DATA ex61;
DO trt=1 to 4; DO r=1 TO 6; INPUT y @@;
yt=ARSIN(SQRT(y/100))*180/3.1415926; OUTPUT; END; END; CARDS;
97 91 82 85 78 77 95 77 72 64 56 68 93 78 75 76 63 71 70 68 66 49 55 64 ;
PROC ANOVA; CLASS trt;
MODEL y yt=trt; MEANS trt / DUNNETT; RUN;
在OUTPUT语句之前对反应量进行转换,即。
文案大全