第四章 过程步与过程步语句

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章过程步与过程步语句

SAS过程步是调用系统提供的标准常用过程或统计分析过程,对指定的在数据步建立的数据集进行处理,并将分析处理的结果显示于输出窗口和图形窗口。关于常用过程和统计分析过程将在第五章以后的章节中介绍。本章给出SAS过程的一般格式及过程步中常用的语句。

§4.1 SAS过程步的一般形式

通常,一个SAS过程步具有如下形式:

PROC 过程名选项;

[其它相关过程步语句]

RUN;

其中,PROC(PROCedure)是一个SAS关键字,PROC表明一个过程步的开始;“过程名”可以是第五章及以后章节中将要介绍的常用过程名或统计过程名。不同的过程有不同的专用SAS名。本书以前的例子中出现的“PROC PRINT;”中的PRINT 一词就是SAS的一个常用标准过程,它的功能是将数据集显示于输出窗口。在各种标准过程中,要进行复杂的计算且依计算方法的不同而要求不同的参数。另一方面,对于同一标准过程,给定不同的参数,输出不同的计算结果和不同的表格形式。每一个标准过程都有各自的一些可供选择的选项,选项的一般形式有如下三种:

(1) 在过程里,一个关键字代表该过程的某一特性,若关键字作为选项出现,则过程处理数据或输出结果时,这一特性给予考虑,否则忽略该特性。

(2) 过程的某一特性可取不同的值,则指定该特性的书写格式为:

特性关键字=特性指定值。

(3) 有些过程需要特定的输入数据集,有些过程也可以建立一些特殊的数据集。过程指定特别输入输出数据集的选项书写格式为:

关键字=数据集名。

具体到一个过程可以有哪些选项,这将在讲具体过程时才能介绍。“其它相关过程步语句”是指下一节将要介绍的一些语句,包括:VAR,ID,BY,CLASS,FREQ , WEIGHT ,MODEL 等过程语句。语句“RUN;”的作用是通知系统开始执行本过程步程序段。当一份程序中有几个过程时,这几个过程可以共用一个RUN语句。

例4.1以下程序段是一个过程步,其功能是将当前数据集输出到输出窗口:

PROC PRINT;

RUN;

§4.2 常用过程步语句

本节介绍的语句是为某些过程进一步提供数据处理信息的。对一个特定的语句,可能有些过程需要它,而在有些过程中不能出现。在有关过程的章节中将指明这些问题。

4.2.1 VAR语句

格式: VAR 变量表;

其中,VAR是关键字;变量表是用空格分隔的输入数据集中的一些变量名,这里的输入数据集是指将要被指定过程处理的数据集。出现在变量表中的数据集变量将参与过程的数据

分析处理,而未出现在变量表中的数据集变量将不参与计算。一个过程中无VAR语句时,数据集中的全体数值变量都参与运算。

4.2.2 ID语句

格式:ID 变量;

其中变量是一个数据集变量,通常称为标识变量,或叫数据集观测的名字变量,不同的观测中该变量的值不同。某些过程的输出结果与观测有关,ID语句指定的变量值用于区分不同的观测。如果ID语句缺项,则用观测的序号来区分不同的观测。

4.2.3 BY语句

格式:BY 变量表;

变量表是一个或用空格分隔的多个数据集变量。某些过程能够完成对数据集依给定关键词进行分组,排序的处理。这里的关键词是变量表中的一个或多个变量。系统依据给定变量的值对数据集进行处理。

4.2.4 CLASS语句

格式:CLASS 变量表;

在一些统计过程中,要对数据集中的数据进行分类处理,CLASS 语句给出分类的依据变量名。如例1.1中,研究六种施肥法对作物的效应,每一种施肥法种五盆作物。第i种施肥

x,那么,这里的变量i与j就是两个分类变量,用以区分不同的法的第j盆得一含氮量

ij

施肥法和不同的盆。

4.2.5 LEBEL语句

格式: LABEL 变量1=“字符串1”变量2=“字符串2” ... 变量n=“字符串n”

其中变量i可以是任何程序变量,字符串i的字符个数不超过四十个。语句使变量i 与字符串i建立对应关系,在某些输出中,变量名用字符串代替。如果SAS在汉字平台上运行时,其字符串可以输入汉字。例如:

LABEL name=“姓名” sex=“性别”;

4.2.6 FREQ语句

格式:FREQ 变量;

在一些试验中,同一观测值多次出现,这样在数据中增加一变量(列)来记每一观测出现的次数,把这一变量叫频数变量。语句中的变量就是数据集中的频数变量。这一语句在一些统计过程中是必须的。该语句也叫频数变量标识语句。

4.2.7 WEIGHT语句

格式:WEIGHT 变量;

在有些试验数据中的某一变量(列)的值表示所在观测(行)的相关权重,在这种情况下,该变量必须用WEIGTH语句来说明。本语句也叫权重变量标识语句。

4.2.8 MODEL语句

MODEL语句是为一些统计分析过程指定所要进行分析的模型形式,即给出模型包含的自变量和因变量的个数以及变量名。由于各种统计模型的差别,所以,只能在相关的统计过程

中将介绍本语句的细节,这里只给出最一般的语句格式。

MODEL 因变量表=自变量表/选项;

其中因变量表中的变量个数等于所要进行分析的模型个数。自变量表给出模型包含的自变量名及其自变量的运算组合形式,这里的运算组合形式是指几个自变量乘积的交叉项。例如:

语句MODEL z=x y;指出模型将包含自变量x和y 的一次项。语句 MODEL y=a b a*b;指出模型中考虑因素a,因素b及其a与b的交互作用。

§4.3 通用SAS语句

本节将要介绍的语句既可以出现在数据步又可以出现在过程步。还允许在数据步和过程步以外,即写在DATA和PROC语句之前。在第三章中介绍过的注释语句、LIBNAME语句和FILENAME语句也属于通用语句。

4.3.1 ENDSAS语句

ENDSAS既可以作为一个命令在“命令输入框”内输入,又可以作为一个语句写在SAS程序里。作为“命令输入框”的命令时,尾部不带分号。其功能是终止SAS程序的运行并且退出SAS返回到Windows。语句的格式为:

ENDSAS;

4.3.2 TITLE语句

格式: TITLE [n] [‘字符串'];

语句的功能是在SAS程序的输出内容中第n行上输出引号内的字符串,以实现为输出内容增加标题。格式中的关键字TITLE与数值n之间无空格;n取1到10的正整数;当n=1时以TITLE代替TITLE1。引号内的字符串就是欲输出的标题内容,可以是任意的键盘字符或汉字,例如 TITLE2“玉米杂交种的系统聚类分析”;语句出现在某一过程步的开头时,则该过程的输出窗口的第一页的上边就会显示引号内的汉字。用TITLE 语句可以最多为一个输出提供十行标题。

4.3.3 FOOTNOTE语句

格式:FOOTNOTE[n] [‘字符串'];

其中n为1至10的正整数,FOOTNOTE与n之间无空格。语句的功能是为SAS程序的输出增加一至十行的脚注;脚注内容由引号内的字符串给定,n值大的语句指定的字符串出现在n 值小的语句指定的字符串的下边。例如一程序中有:

FOOTNOTE1 ‘abc';

FOOTNOTE2 ‘xyz';

则字符xyz在最下边一行,abc在一页的倒数第二行上。

4.3.4 OPTIONS语句

OPTIONS语句用于改变SAS环境设置,环境设置的参数由语句中的选项给出,语句的格式为:

OPTIONS 选项;

SAS提供了二十多个OPTIONS的选项,用户可以在命令行键入OPTIONS查看OPTIONS窗口中列出的全部选项。下面通过介绍几个常用选项来说明OPTIONS作为语句的使用方法。

相关文档
最新文档