第四章过程步与过程步语句.docx
- 文档编号:11339180
- 上传时间:2023-02-28
- 格式:DOCX
- 页数:17
- 大小:1MB
第四章过程步与过程步语句.docx
《第四章过程步与过程步语句.docx》由会员分享,可在线阅读,更多相关《第四章过程步与过程步语句.docx(17页珍藏版)》请在冰豆网上搜索。
第四章过程步与过程步语句
完第四章过程步与过程步语句
SAS过程步是调用系统提供的标准常用过程或统计分析过程,对指定的在数据步建立的数据集进行处理,并将分析处理的结果显示于输出窗口和图形窗口。
关于常用过程和统计分析过程将在第五章以后的章节中介绍。
本章给出SAS过程的一般格式及过程步中常用的语句。
§4.1SAS过程步的一般形式
通常,一个SAS过程步具有如下形式:
PROC过程名选项;
[其他相关过程步语句]
RUN;
其中,PROC(PROCedure)是一个SAS关键字,PROC表明一个过程步的开始;“过程名”可以是第五章及以后章节中将要介绍的常用过程名或统计过程名。
不同的过程有不同的专用SAS名。
本书以前的例子中出现的“PROCPRINT;”中的PRINT一词就是SAS的一个常用标准过程,它的功能是将数据集显示于输出窗口。
在各种标准过程中,要进行复杂的计算且依计算方法的不同而要求不同的参数。
另一方面,对于同一标准过程,给定不同的参数,输出不同的计算结果和不同的表格形式。
每一个标准过程都有各自的一些可供选择的选项,选项的一般形式有如下三种:
(1)在过程里,一个关键字代表该过程的某一特性,若关键字作为选项出现,则过程处理数据或输出结果时,这一特性给予考虑,否则忽略该特性。
(2)过程的某一特性可取不同的值,则指定该特性的书写格式为:
特性关键字=特性指定值。
(3)有些过程需要特定的输入数据集,有些过程也可以建立一些特殊的数据集。
过程指定特别输入输出数据集的选项书写格式为:
关键字=数据集名。
具体到一个过程可以有哪些选项,这将在讲具体过程时才能介绍。
“其它相关过程步语句”是指下一节将要介绍的一些语句,包括:
VAR,ID,BY,CLASS,FREQ,WEIGHT,MODEL等过程语句。
语句“RUN;”的作用是通知系统开始执行本过程步程序段。
当一份程序中有几个过程时,这几个过程可以共用一个RUN语句。
例4.1以下程序段是一个过程步,其功能是将当前数据集输出到输出窗口:
PROCPRINT;
RUN;
§4.2常用过程步语句
本节介绍的语句是为某些过程进一步提供数据处理信息的。
对一个特定的语句,可能有些过程需要它,而在有些过程中不能出现。
在有关过程的章节中将指明这些问题。
4.2.1VAR语句
格式:
VAR变量表;
其中,VAR是关键字;变量表是用空格分隔的输入数据集中的一些变量名,这里的输入数据集是指将要被指定过程处理的数据集。
出现在变量表中的数据集变量将参与过程的数据分析处理,而未出现在变量表中的数据集变量将不参与计算。
一个过程中无VAR语句时,数据集中的全体数值变量都参与运算。
4.2.2ID语句
格式:
ID变量;
其中变量是一个数据集变量,通常称为标识变量,或叫数据集观测的名字变量,不同的观测中该变量的值不同。
某些过程的输出结果与观测有关,ID语句指定的变量值用于区分不同的观测。
如果ID语句缺项,则用观测的序号来区分不同的观测。
4.2.3BY语句
格式:
BY变量表;
变量表是一个或用空格分隔的多个数据集变量。
某些过程能够完成对数据集依给定关键词进行分组,排序的处理。
这里的关键词是变量表中的一个或多个变量。
系统依据给定变量的值对数据集进行处理。
4.2.4CLASS语句
格式:
CLASS变量表;
在一些统计过程中,要对数据集中的数据进行分类处理,CLASS语句给出分类的依据变量名。
如例1.1中,研究六种施肥法对作物的效应,每一种施肥法种五盆作物。
第i种施肥法的第j盆得一含氮量
,那么,这里的变量i与j就是两个分类变量,用以区分不同的施肥法和不同的盆。
4.2.5LEBEL语句
格式:
LABEL变量1=“字符串1”变量2=“字符串2”...变量n=“字符串n”
其中变量i可以是任何程序变量,字符串i的字符个数不超过四十个。
语句使变量i与字符串i建立对应关系,在某些输出中,变量名用字符串代替。
如果SAS在汉字平台上运行时,其字符串可以输入汉字。
例如:
LABELname=“姓名”sex=“性别”;
4.2.6FREQ语句
格式:
FREQ变量;
在一些试验中,同一观测值多次出现,这样在数据中增加一变量(列)来记每一观测出现的次数,把这一变量叫频数变量。
语句中的变量就是数据集中的频数变量。
这一语句在一些统计过程中是必须的。
该语句也叫频数变量标识语句。
4.2.7WEIGHT语句
格式:
WEIGHT变量;
在有些试验数据中的某一变量(列)的值表示所在观测(行)的相关权重,在这种情况下,该变量必须用WEIGTH语句来说明。
本语句也叫权重变量标识语句。
4.2.8MODEL语句
MODEL语句是为一些统计分析过程指定所要进行分析的模型形式,即给出模型包含的自变量和因变量的个数以及变量名。
由于各种统计模型的差别,所以,只能在相关的统计过程中将介绍本语句的细节,这里只给出最一般的语句格式。
MODEL因变量表=自变量表/选项;
其中因变量表中的变量个数等于所要进行分析的模型个数。
自变量表给出模型包含的自变量名及其自变量的运算组合形式,这里的运算组合形式是指几个自变量乘积的交叉项。
例如:
语句“MODELz=xy”;指出模型将包含自变量x和y的一次项。
语句“MODELy=aba*b”;指出模型中考虑因素a,因素b及其a与b的交互作用。
§4.3通用SAS语句
本节将要介绍的语句既可以出现在数据步又可以出现在过程步。
还允许在数据步和过程步以外,即写在DATA和PROC语句之前。
在第三章中介绍过的注释语句、LIBNAME语句和FILENAME语句也属于通用语句。
4.3.1ENDSAS语句
ENDSAS既可以作为一个命令在“命令输入框”内输入,又可以作为一个语句写在SAS程序里。
作为“命令输入框”的命令时,尾部不带分号。
其功能是终止SAS程序的运行并且退出SAS返回到Windows。
语句的格式为:
ENDSAS;
4.3.2TITLE语句
格式:
TITLE[n][‘字符串'];
语句的功能是在SAS程序的输出内容中第n行上输出引号内的字符串,以实现为输出内容增加标题。
格式中的关键字TITLE与数值n之间无空格;n取1到10的正整数;当n=1时以TITLE代替TITLE1。
引号内的字符串就是欲输出的标题内容,可以是任意的键盘字符或汉字,例如TITLE2“玉米杂交种的系统聚类分析”;语句出现在某一过程步的开头时,则该过程的输出窗口的第一页的上边就会显示引号内的汉字。
用TITLE语句可以最多为一个输出提供十行标题。
4.3.3FOOTNOTE语句
格式:
FOOTNOTE[n][‘字符串'];
其中n为1至10的正整数,FOOTNOTE与n之间无空格。
语句的功能是为SAS程序的输出增加一至十行的脚注;脚注内容由引号内的字符串给定,n值大的语句指定的字符串出现在n值小的语句指定的字符串的下边。
例如一程序中有:
FOOTNOTE1‘abc';FOOTNOTE2‘xyz';
则字符xyz在最下边一行,abc在一页的倒数第二行上。
4.3.4OPTIONS语句
OPTIONS语句用于改变SAS环境设置,环境设置的参数由语句中的选项给出,语句的格式为:
OPTIONS选项;
SAS提供了二十多个OPTIONS的选项,用户可以在命令行键入OPTIONS查看OPTIONS窗口中列出的全部选项。
下面通过介绍几个常用选项来说明OPTIONS作为语句的使用方法。
(1)LINESIZE=n,其中n为正整数,n的值指定SAS输出时每一行的字符个数。
(2)PAGESIZE=n,n的值指定SAS输出时每一页的行数。
在输出图形时,应特别注意适当选择上述选项。
(3)NODATE若有此关键字出现在OPTIONS之后,则在SAS的输出中无日期时间行。
例如语句OPTIONSPAGESIZE=60;将使SAS输出的每一页由六十行组成。
4.3.5RUN语句
格式:
RUN;
语句的功能是使其前面的过程被执行。
通常,一个过程步的最后是一行RUN语句。
也可以几个过程步用一个RUN语句。
4.3.6X语句
字符X既可以是一个“命令输入框”输入的命令,又可以是一个程序语句。
其功能是调用DOS命令或DOS下的可执行文件。
语句的格式为:
X“DOS命令或可执行文件名”;
作为“命令输入框”的命令时,尾部不带分号。
其中“DOS命令或可执行文件名”中可以带有驱动器,路径等项目。
例如显示C盘子目录work下的目录,那么在命令行键入:
X“dirc:
\work\*.*”
这是一条常用的SAS命令,在本命令的帮助下,不用退出SAS而调用DOS命令或执行DOS下的可执行文件。
§4.4交互方式使用SAS的功能
SAS的Windows版本充分利用图形用户界面优点,除了可以以程序方式使用外,还提供了以交互方式使用系统的大部分功能。
4.4.1数据集的建立与维护
在第三章论述了以程序方式产生数据集的方法及数据集的相关概念。
下面将介绍以交互方式产生、修改和维护数据集。
(1)利用“表编辑器”新建立数据集
在建立数据集前,先要产生一个与之相联系的逻辑库,以便将新建立的数据集存放在磁盘中,假设逻辑库名叫“mylib”,且设该逻辑库对应的物理目录路径为“c:
\mydir"(c盘根目录下已经存在子目录mydir)。
其操作如下:
(ⅰ)“文件(F)”→“新建程序(E)”,此后,出现一个“编辑器”,而后在该编辑器内输入语句:
LIBNAMEmylib“c:
\mydir”;
向系统提交之后,完成了逻辑库mylib与物理路径c:
\mydir的联系。
现在可以用“表编辑器”建立一个新的数据集,假设数据集的名字叫myset。
操作:
”工具(T)”→“表编辑器(T)”后,出现如图4.1
图4.1表编辑器
在图4.1表编辑器的第一行“A”、“B”、“C”、...各框内顺序输入数据集的各个变量名;而后在以下的各行内输入各个观测的数据值即可。
在输入完成后,如图4.2所示。
图4.2在表编辑器输入数据集
这时需要保存建立的数据集到一个逻辑库中(也就是一个与之对应的磁盘目录)且退出这种建立数据集的状态。
操作:
“文件(F)”→“保存(S)”,弹出如图4.3的“另存为”小框。
在小框内需要下列操作:
首先双击逻辑库中的mylib,而后在“成员名(M)”框内输入myset并且点击小框内的“保存(S)”即可完成名为myset的数据集的建立。
图4.3保存数据集
(2)利用“表编辑器”对数据集的维护和更新
假设要对刚建立的名为mylib.myset进行更新维护,操作如下:
(ⅰ)在SAS浏览器内双击
,而后双击
,再双击
,就调出了数据集myset.
(ⅱ)在菜单栏操作:
“编辑(E)”→“编辑模式(E)”。
(ⅲ)对给出的表格形式的数据集myset进行增删替换等修改操作。
需要指出的是在操作
(2)完成后,可以利用鼠标右键进行修改功能的切换。
还有,在工具内也提供了切换的图标(图4.4)。
图4.4SAS表编辑器下的工具栏
(3)利用“解决方案”的功能产生数据集
SAS建立和维护数据集的另一途径是利用“解决方案”中的功能,操作如下:
“解决方案(S)”→“分析(S)”→“分析家(S)”,出现如图4.5的窗口。
图4.5新建立数据集窗口
在图4.5的“A”、“B”、“C”、……各个框内输入数据集的变量名,而后在顺序编号的各行内输入各个观测的值,这些如同“表编辑器”建立数据集的操作。
数据输入完成后要进行存储,存储数据集的操作过程同
(1)。
假设刚保存的数据集名为myset1,并且存放在逻辑库mylib内。
(4)利用“解决方案”的功能维护数据集
对数据集的维护可以分为三步:
打开要维护的数据集、进行维护操作、保存维护后的数据集。
为了叙述方便,假设要对目录c:
\mydir下的数据集myset1进行修改,该数据集有nameagesalary三个变量和三个观测,现在要对数据集myset1进行增加变量sex和追加两个观测的修改。
(ⅰ)打开数据集myset1又分为如下两步:
A.操作:
“解决方案(S)”→“分析(S)”→“分析家(S)”。
系统弹出如图4.5的窗口。
B.点击:
“文件(F)”→“打开(O)”或者点击工具栏的
。
而后选择路径到目录C:
\mydir下,双击myset1,将弹出如图4.6的窗口,窗口内以表格形式清楚显示着要被修改的数据集myset1。
至此,完成了打开要维护的数据集myset1的操作
图4.6将要被修改的数据集
(ⅱ)进行维护修改操作
A.进行“编辑”与“浏览”模式切换操作:
“编辑(E)”→“模式(M)”→“编辑(E)”(或者右击鼠标,而后依照给出的菜单进行操作)。
B.增加一个观测的操作:
“编辑(E)”→“添加行(R)”。
在出现的加黑的新空行内输入新的数据即可。
如上操作可以完成加入观测的修改。
C.增加一个变量的操作:
“编辑(E)”→“插入列(C)”→“字符型(C)和数字型(N)”中选一。
至此,显示的数据集右侧出现一个新列,变量名为“New0001”。
把字符串New0001改为sex三个字符的操作是将鼠标右键点击“New0001”框,选择英文菜单中的properties…项,弹出如图4.7的变量属性窗口,将窗口中Name框内的字符串New0001换成字符串sex,点击OK即可。
而后输入对应变量sex各观测的值。
图4.7修改变量属性窗口
(ⅲ)保存操作:
“文件(F)”→“保存(S)”或者点击工具栏的
即可。
(5)SAS与其它软件系统的数据交换
SAS与其它软件系统的数据交换能够以程序和交互两种方式实现,现在介绍SAS提供的方便易学的交互操作的“导入数据”和“导出数据”,二者可以实现SAS与部分软件系统的数据交换。
(ⅰ)SAS数据集转换为其它数据文件(导出数据)
为了叙述方便,假设以下的操作是将存放在c:
\mydir下的数据集myset1转换为EXCEL文件sastoexcel.xls,并且将数据集myset1与逻辑库mylib建立联系。
操作如下:
图4.8导出数据窗口1
“文件(F)”→“导出数据(R)”,系统弹出如图4.8的导出数据窗口。
在该窗口内的Library框内选择mylib并且在member框内输入myset1,点击“Next”后系统弹出如图4.9的窗口,在列出的项目中,选择“MicrosoftExcel97,2000or2002Workbook”,点击“Next”后系统弹出如图4.10的窗口,在Workbook框内输入(或者浏览选择)转换后的EXCEL文件的存储目录路径和文件名c:
\mydir\sastoexcel.xls,点击“Next”后系统弹出如图4.11的窗口,在输入框内输入任意字符,然后点击Finish,就完成了由SAS数据集myset1的数据转换到名为sastoexcel.xls的EXCEL文件。
图4.9导出数据窗口2
图4.10导出数据窗口3
图4.11导出数据窗口4
(ⅱ)其它数据文件转换为SAS数据集(导入数据)
其它类型的数据文件转换为SAS数据集,也就是“导入数据”,其操作也十分简单,用菜单栏的“文件(F)”,然后依照菜单提示顺序操作,即可实现数据的转换。
4.4.2数据分析的简单操作
为了叙述方便,用例1.1的简单方差分析问题,作为处理对象,来叙述如何使用SAS交互方式进行数据处理。
操作基本分为,建立欲处理的数据集和进行数据分析两步。
(1)建立处理的数据集操作如下:
“解决方案(S)”→“分析(S)”→“分析家(S)”,之后SAS的界面成为如图4.12。
这个界面与图4.5一样。
在这里可以新建数据集,也可以调用已经存储的现成的数据集。
当数据集准备好后,就可以进行下一步的数据处理。
图4.12SAS交互数据分析界面1
(2)数据处理的操作如下:
菜单栏:
“统计(S)”→“方差分析(A)”→“单向方差分析(O)”。
这三步操作后系统弹出窗口如图4.13所示。
选定(鼠标左键)左侧框内的x而后点击Dependent框;再选定treat而后点击Independent。
这两步操作后,图4.13窗口变化为图4.14。
在点击小窗口右下方的Means按钮
,系统又弹出窗口,如图4.15所示,点击Maineffects窗口中的变量treat,又弹出选项,如图4.16,选择Fisher’sLSD,再点击Effect/method:
上的按钮
。
图4.13SAS交互数据分析界面2
图4.14SAS交互数据分析界面3
图4.15SAS交互数据分析界面4
图4.16SAS交互数据分析界面5
完成上述操作,点击OK按钮
向系统提交,稍候片刻,系统弹出Analysis窗口并且显示处理结果,所显示的内容与例1.1程序方式得到的结果完全一致。
这里通过一个例子初步说明SAS的交互数据处理分为两步:
产生要处理的数据集和进行处理算法的选择。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四章 过程步与过程步语句 第四 过程 语句