第4章 SAS过程步与过程步语句

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

第4章SAS过程步与过程步语句

摘要:本章讲授过程步一般形式,SAS过程步产用常用语句,程序设计中通用的SAS语句,学习过程步常用有关语句功能及其用法。为后面统计分析过程的调用作好准备。

SAS过程步用来调用系统提供的标准常用过程或统计分析过程,对指定的SAS 数据集进行处理,并将分析结果显示输出到OUTPUT窗口。一个过程步是一个功能程序模块,调用不同的过程可实现用不同方法对数据进行分析。

§4.1 SAS过程步的一般形式

通常,SAS过程步的一般形式为:

PROC 过程名选择项;

[其他相关过程步语句;]

RUN;

说明:

1.ROC表示一个过程的开始;“过程名”可以是后面各章节将要介绍的常用过程名或统计过程名。不同的过程有不同的专用SAS名,而且各有

一些可供选择的选择项(参数),对于同一过程,给定不同的参数,输

出不同的计算结果和不同表格形式。

2.选项:选择项一般以关键字为核心构成,常用下面三种形式:

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

②关键字=值过程的某一特性可取不同的值,则指定该特性的书写格式为:

特性关键字=特性值(数字或字符串)。

③关键字=SAS数据集有些过程需要特定的输入数据集,有些过程可以建立一些特殊的数据集。过程指定特别输入输出数据集的选项书写格式为:

关键字=数据集名

该形式规定输入或输出的数据集,最常用的是DATA=数据集,指出本过程要处理的数据集名称,若缺省,则使用最新建立的数据集。如“PROC PRINT DATA=new;”。

3.其他相关过程步语句:有VAR、ID、BY、CLASS、WEIGHT等过程步语句,将在下一节中讲述。

4.RUN的作用是通知系统开始执行本过程程序段,当一个程序文件中有几个过程时,它们可共用一个RUN语句。

5.常用的过程步名称及功能:

SAS程序中涉及的过程多达数百种,实现统计功能时常用的过程也有数十种之多,现将最为常用的过程名称及其所能实现的功能列入下表(表4.1),以便各位提前热热身。

表4.1 常用的过程名称及其功能

§4.2 常用过程步语句

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

一、VAR语句

1.功能:用于列出将参与运算处理的分析变量,各变量名间以空格分隔。若省略VAR语句,则所有的数值型变量都参与处理。

2.格式:VAR 变量表;

其中,变量是一个数据集变量,变量表是是用空格分隔的输入数据集中的一些

变量名,出现在变量表中的数据集变量参与过程的数据分析处理,而未出现的变量将不参与运算。

例如:

DATA new;

INPUT x y@@;

CARDS;

10 20 11 12 PROC MEANS;

VAR x;

RUN; 输出结果:

Analysis Variable : X

N Mean Std Dev Minimum Maximum 7 13.0000000 2.1602469 10.0000000 16.0000000

二、ID语句

1.功能:指定用于区分不同观测的变量。

2.格式:ID 变量;

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

例如:data;

input name$ sex$ age;

cards;

aa f 34

ab f 25

ba m 56

bb m 21

proc print;

id name;

run;

三、BY语句

1.功能:过程步将数据集数据按指定的变量以升序进行分组处理。

2.格式:BY 变量表;

INPUT 变量表;

例如:将学生的成绩输入,作为一个数据集,再用班级进行分组。

data student;

input bj$ xm$ yy gs;

p=yy+gs;

cards;

1 aaa 89 91

2 bbb 70 88

1 ccc 90 92

2 ddd 70 87

2 eee 85 83

proc print;

proc sort;

by bj gs;

proc print;

run;

四、CLASS语句

1.功能:指定分类变量。在一些分组统计过程中,要对数据进行分类处理,用该语句给出分类的依据变量名,进行各种组合处理。

2.格式:CLASS 变量表;

CLASS语句的作用类似于BY语句,但BY语句要求先排序,另外二者之间的输出格式也不同。

五、FREQ语句

1.功能:指定一个数值变量,它的值表示工作数据集中观察值重复出现的频数。若此变量不是一个整数,SAS会截去小数部分,只取其整数部分。该变量通常称作频数变量,该语句也叫频数变量标识语句。

2.格式:FREQ 变量;

在某些试验中,同一观测值多次出现,这样在数据集中增加1个变量,用来记录每一观测出现的次数。用FREQ语句可减少数据输入,加快计算。

例如:

DATA height;

INPUT height number@@;

CARDS;

75 20 76 23 77 28 78 38 79 52

80 40 81 32 83 28 84 23 85 16

PROC MEANS;

VAR height;

FREQ number;

RUN;

六、WEIGHT语句

1.功能:在有些试验中的某一变量(列)的值表示所在观测(行)的相关权重,该变量必须用WEIGHT语句来说明。

相关文档
最新文档