第四章 多组资料均数比较的SAS编程实现

2012-04-17 生物谷 不详

多组资料均数比较我们一般采用方差分析的方法,SAS中方差分析的功能非常全面,能实现方差分析功能的过程有anova过程和glm过程。 一、anova过程和glm过程简介 1. anova过程 anova过程存在于stat模块,主要的功能就是进行方差分析。anova过程用以对平衡实验设计资料(各分组因素各水平的所有组合具有相同的样本量或观察值)进行分析,不能用于对非平衡实验设计资料的方差分析。它

多组资料均数比较我们一般采用方差分析的方法,SAS中方差分析的功能非常全面,能实现方差分析功能的过程有anova过程和glm过程。

一、anova过程和glm过程简介

1. anova过程

anova过程存在于stat模块,主要的功能就是进行方差分析。anova过程用以对平衡实验设计资料(各分组因素各水平的所有组合具有相同的样本量或观察值)进行分析,不能用于对非平衡实验设计资料的方差分析。它比glm过程的运行速度要快,要求的存贮空间也要小一些。

anova过程的一般格式如下:

 

PROC ANOVA < 选项列表 > ;

CLASS 变量名列表 ;

MODEL 应变量=自变量表达式 < / 选项列表 > ;

ABSORB 变量列表 ;

BY 变量名 ;

FREQ 变量名 ;

MANOVA < 检验选项 >< / 详细选项 > ;

MEANS 自变量表达式 < / 选项 > ;

REPEATED 变量名 水平数 <(各水平值)>< / 选项 > ;

TEST < H=变量表达式 > E=变量表达式;

 

proc anova语句启动anova过程的运行,其后的选项列表可含有以下项目:

DATA=数据集名

MANOVA

MULTIPASS

NAMELEN=n

NOPRINT

ORDER=DATA | FORMATTED | FREQ | INTERNAL

OUTSTAT=SAS-data-set

其中的“order=”选项指定anova过程对分类变量(class语句指定的变量)各水平的排序方式,可选的四个条目分别表示按照原始数据中的顺序、输出格式值的顺序、各水平观察值频数多少的顺序、内部值的顺序进行排序。其余选项和以前的内容相同或较少用到,这里不再一一解释。

其后的class语句、by语句、freq语句等和以前的内容完全相同,我们这里着重了解一下anova过程中特有的关键语句。

model语句:用来指定应变量和自变量,并且通过特定的表达式规定自变量的作用方式。如果没有指定任何自变量,则模型中仅包含常数项,此时检验的内容是应变量的均数是否为零。model语句中指定的自变量必须是class语句中声明过的分类变量,anova过程不允许自变量中有连续型变量(数值变量),而应变量则必须是数值型变量。

自变量表达式可用来表达三种不同的效应模型,即主效应模型、交互效应模型、嵌套设计效应模型。我们假定应变量为ya, b, c为模型中包含的三个自变量,各种效应模型的表达方式如下:

1)主效应模型:y=a b c;

2)交互效应模型:y=a b c a*b a*c b*c a*b*c;

3)嵌套设计模型:y=a b c(a b); 其中c因素为ab两因素各种组合下的二级因素。

model语句末尾的选项有“intercept”和“nouni”两项,分别指定SAS进行关于常数项的假设检验和在多变量方差分析(或重复测量资料方差分析)时禁止单变量统计结果的输出。

absorb语句:对于仅发挥主效应的因素,absorb语句指定SAS消除此变量的作用,只对其余变量进行分析,起到大幅度减少计算机资源和时间消耗的作用。应用此功能时,须先对指定变量排序,且此变量不能再出现在class语句和model语句中。

manova语句:当反应变量有多个时,此语句控制anova过程进入多元方差分析模式,其后的选项用以指定多元方差分析时的各项指标。

means语句:指定anova过程计算指定变量各水平下反应变量的均值、标准差,并进行组间的多重比较。

repeated语句:如果反应变量为重复测量数据,此语句用以指定anova过程进入重复测量数据方差分析模式。其中的变量名代表重复测量因素(如测量时间等),其后水平数代表重复测量的次数,如果需指定重复测量各次的具体标识,可在其后按顺序列出,并用圆括号括起来。

test语句:用以进行其他类型的f检验,这种检验不同于通常方差分析中以误差均方为分母的f检验,其中的选项“h=”用以指定作为分子的变量表达式(必须在model语句中出现过),“e=”用以指定一个作为分母的变量。

2. glm过程

glm过程也存在于stat模块中,它执行以最小二乘法进行模型拟合的功能。以此过程可以实现的统计学方法有回归分析、方差分析、协方差分析、多元方差分析以及偏相关分析。glm过程对数据的分析处理均在一般线性模型的框架下进行,反应变量可以为一个或多个连续型变量,自变量可为连续型也可为离散型。

glm过程的一般格式如下:

 

PROC GLM < 选项列表 > ;

CLASS 变量名列表 ;

MODEL 应变量=自变量列表 < / 选项列表 > ;

ABSORB 变量名列表 ;

BY 变量名列表 ;

FREQ 变量名列表 ;

ID 变量名列表 ;

WEIGHT 变量名列表 ;

CONTRAST '标记' 效应表达式 常数向量 < ... 效应表达式 常数向量 > < / 选项列表 > ;

ESTIMATE '标记' 效应表达式 常数向量 < ... 效应表达式 常数向量 > < / 选项列表 > ;

LSMEANS效应表达式< / 选项列表 > ;

MANOVA < 检验选项 >< / 详细选项 > ;

MEANS 效应表达式 < / 选项列表 > ;

OUTPUT < OUT=数据集名 > keyword=names < ... keyword=names > < / 选项 > ;

RANDOM效应表达式 < / 选项列表 > ;

REPEATED 因素表达式 < / 选项列表 > ;

TEST < H=变量表达式> E=变量表达式< / 选项列表 > ;

Proc glm语句标志glm过程的开始,此句后的选项可有以下项目。

 

DATA=数据集名

ALPHA=p

MANOVA

MULTIPASS

NAMELEN=n

NOPRINT

ORDER=DATA | FORMATTED | FREQ | INTERNAL

OUTSTAT=SAS-data-set

可以看到此选项列表仅比anova过程的多了一个项目,即“alpha=p”选项,此选项用来指定计算过程中所采用的显著性水平。其余选项的用法和含义与anova过程的相同,这里不再多说了。

大家可以比较一下glm过程和anova过程所涉及的语句,anova过程中涉及的所有语句都包含在glm过程所涉及的语句中,其用法和功能也都是基本相同的,这一部分语句这里就不再赘述。

Contrast语句使你可以用自定义的方式进行假设检验,它必须出现在model语句之后,如果用到manova语句、repeated语句、random语句或test语句,contrast语句必须出现在这些语句之前。标记用来标识所进行的检验,用以标识的文字或符号需用单引号括起来。效应表达式用以指定假设检验的因素(组合),这些因素(组合)必须是model语句中出现过的。效应表达式后的常数向量用以指定相应因素(组合)各水平的值,在指定各水平的情况下进行相关因素的分析。

Estimate语句可实现对线性方程的估计,它也必须出现在model语句之后,使用的规则和contrast语句基本相同。其中的语句元素的含义和用法也与contrast语句相同。

Lsmeans语句用以指示SAS对指定的因素(组合)计算应变量的最小二乘均数并输出到结果中。

Output语句我们在以前的内容中接触过,其功能和用法和以前的内容也基本相同,各位请参考以前的内容使用。

Random语句用以指定哪些因素(组合)是随机变量,即相对于这些因素(组合),样本是来自于正态总体的随机样本,这样SAS可对相应因素(组合)作随机效应模型的分析。

对以上几条语句的理解完全来自SAS的帮助文件,由于专业知识深度不够以及英语水平有限的原因,以上关于这几种语句的内容会存在很多的错误与偏差,还请各位多多谅解,也希望各位能多多指点。进一步的内容我会给出及时的更新。

 

二、不同设计类型资料的方差分析

需进行多组均数比较的资料设计类型有完全随机设计、随机单位组设计、析因设计、重复测量设计等,下面我们分别以实例来演示SAS中这类数据的分析方法。

 

1. 完全随机设计资料的方差分析(含均数间的多重比较)

4-1  为了解烫伤后不同时期切痂对肝脏三磷酸腺苷(简写为ATP)含量的影响,将30只雄性大鼠随机分3组, 每组10只:A组为烫伤对照组,B组为烫伤后24小时(休克期)切痂组,C组为烫伤后96小时(非休克期)切痂组,全部动物统一在烫伤后168小时处死并测量其肝脏的ATP含量,结果见表4.1。请检验三组大鼠肝脏的ATP含量有无差别。

 

4.1  大鼠烫伤后肝脏ATP含量的测量结果(单位:mg)

A组

B组

C组

   7.76

    11.14

    10.85

   7.71

    11.60

     8.58

   8.43

    11.42

     7.19

   8.47

    13.85

     9.36

  10.30

    13.53

     9.59

   6.67

    14.16

     8.81

  11.73

     6.94

     8.22

   5.78

    13.01

     9.95

   6.61

    14.18

    11.26

   6.97

    17.72

     8.68

针对以上资料,我们使用anova过程来实现方差分析的功能。编制SAS程序如下:

 

data temp;

  infile 'e:\data\data4_1.txt';

  do i=1 to 10;

  do g=1 to 3;

  input x@@;

  output;

  end;

  end;

proc anova;

  class g;

  model x=g;

Run;

quit;

本段程序中用到SAS的循环语句,其格式和多数计算机编程软件中的相同,我相对于它的用法和含义不用再多罗嗦了。灵活运用循环语句在SAS编程过程中可以节省很多的精力。此处因为数据位于不同的列中,每行包含每一组的一个数据,用循环语句正好可以产生一个代表不同分组的变量,省去了逐个输入带来的麻烦。需要提醒各位要特别注意的是,循环语句的每一个do语句,必须有一个相应的end语句来结束它,否则就会出错。

此处需要分析的变量(应变量)是x,干预因素(自变量)为分组变量g,因而model语句中效应表达式为x=g

提交上述程序,结果如下。

 

                       The SAS System         10:49 Monday, October 14, 2002   5

 

                                        The ANOVA Procedure

 

                                      Class Level Information

 

                                   Class         Levels    Values

 

                                   g                  3    1 2 3

 

 

                                    Number of observations    30

                       The SAS System         10:49 Monday, October 14, 2002

版权声明:
本网站所有内容来源注明为“梅斯医学”或“MedSci原创”的文字、图片和音视频资料,版权均属于梅斯医学所有。非经授权,任何媒体、网站或个人不得转载,授权转载时须注明来源为“梅斯医学”。其它来源的文章系转载文章,或“梅斯号”自媒体发布的文章,仅系出于传递更多信息之目的,本站仅负责审核内容合规,其内容不代表本站立场,本站不负责内容的准确性和版权。如果存在侵权、或不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
在此留言
评论区 (2)
#插入话题
  1. [GetPortalCommentsPageByObjectIdResponse(id=374243, encodeId=2fe63e4243a2, content=文章很好, beContent=null, objectType=article, channel=null, level=null, likeNumber=59, replyNumber=0, topicName=null, topicId=null, topicList=[], attachment=null, authenticateStatus=null, createdAvatar=http://cdnapi.center.medsci.cn/medsci/head/2019/10/21/e031c1d6c6115cbe1737b2149e602c1d.jpg, createdBy=3c105212218, createdName=147612bem32暂无昵称, createdTime=Tue Oct 22 15:58:32 CST 2019, time=2019-10-22, status=1, ipAttribution=), GetPortalCommentsPageByObjectIdResponse(id=2007731, encodeId=cfe9200e731ee, content=<a href='/topic/show?id=cf4d1590956' target=_blank style='color:#2F92EE;'>#SAS#</a>, beContent=null, objectType=article, channel=null, level=null, likeNumber=26, replyNumber=0, topicName=null, topicId=null, topicList=[TopicDto(id=15909, encryptionId=cf4d1590956, topicName=SAS)], attachment=null, authenticateStatus=null, createdAvatar=, createdBy=8e4c53, createdName=jiyangfei, createdTime=Sat Aug 04 17:14:00 CST 2012, time=2012-08-04, status=1, ipAttribution=)]
    2019-10-22 147612bem32暂无昵称

    文章很好

    0

  2. [GetPortalCommentsPageByObjectIdResponse(id=374243, encodeId=2fe63e4243a2, content=文章很好, beContent=null, objectType=article, channel=null, level=null, likeNumber=59, replyNumber=0, topicName=null, topicId=null, topicList=[], attachment=null, authenticateStatus=null, createdAvatar=http://cdnapi.center.medsci.cn/medsci/head/2019/10/21/e031c1d6c6115cbe1737b2149e602c1d.jpg, createdBy=3c105212218, createdName=147612bem32暂无昵称, createdTime=Tue Oct 22 15:58:32 CST 2019, time=2019-10-22, status=1, ipAttribution=), GetPortalCommentsPageByObjectIdResponse(id=2007731, encodeId=cfe9200e731ee, content=<a href='/topic/show?id=cf4d1590956' target=_blank style='color:#2F92EE;'>#SAS#</a>, beContent=null, objectType=article, channel=null, level=null, likeNumber=26, replyNumber=0, topicName=null, topicId=null, topicList=[TopicDto(id=15909, encryptionId=cf4d1590956, topicName=SAS)], attachment=null, authenticateStatus=null, createdAvatar=, createdBy=8e4c53, createdName=jiyangfei, createdTime=Sat Aug 04 17:14:00 CST 2012, time=2012-08-04, status=1, ipAttribution=)]
    2012-08-04 jiyangfei

相关资讯

第二章 计量资料的统计描述

一、计量资料的统计描述 计量资料统计描述的内容主要包括平均指标和变异指标的计算、资料分布形态(或特征)的图形表现等。 (一)实现描述性统计功能的几个过程 描述性统计指标的计算可以用四个不同的过程来实现,它们分别是means过程、summary过程、univariate过程以及tabulate过程。它们在功能范围和具体的操作方法上存在一定的差别,下面我们大概了解一下它们的异同点。 相同点:他

SAS常用程序(1)

2.1  利用SAS软件描述样本数据   用SAS可以对样本数据进行全面描述,得出样本的各种特征数以及频数分布图。在阅读以下内容之前请先阅读第一章“SAS软件基本操作”。   2.1.1  用MEANS语句描述数据   例 2.1  计算课本上习题1.2的平均数和标准差。 解 

第一章 SAS编程操作预备知识

一、SAS系统简介 SAS是一个庞大的系统,它目前的版本可以在多种操作系统中运行。当前在国内被广泛使用的最新版本是8.2版,功能很强大,我深有体会。 据说9.0版已在国外面世,已经有一些有关它的抢先报道在网络上广为流传,说它如何如何美妙,令人不禁充满期待。 SAS8.2的完整版本包含以下数十个模块。 BASE,GRAPH,ETS,FSP,AF,OR,IML,SHARE,QC,STAT,IN

二、计数资料的统计描述

二、计数资料的统计描述 计数资料的描述性统计量,最为主要的是相对数,即率、构成比、相对比等。统计图形表述方式有圆图和百分条图等。下面我们将例2-1的数据转换为计数资料的形式,用以展示计数资料统计描述的SAS编程实现方法。 例2-3  我们假设甘油三酯水平高于1.5者为异常,将160名女子划分为正常和异常两组。分别计算正常组和异常组占总人数的构成比,并用圆图和百分条图展示其构成情况。

第三章 两组资料均数比较的SAS编程实现

一、均数差别比较的t检验 1. 样本均数和总体均数比较的t检验 样本均数和总体均数差别的比较可以直接进行比较,也可以将其看成每个测量值和总体均数差值的均数和0的比较,均为单变量分析的形式,可用前面介绍的三个执行描述性统计分析功能的过程来完成。这里我们用univariate过程和means过程分别演示这种分析的SAS编程实现方法,summary过程的操作方法各位可以自己试着练习一下。 以Mea