04-SAS 程序基础

一个简单的 SAS 程序示例

作者

Simon Zhou

发布于

2025年5月24日

import saspy
sas = saspy.SASsession()
Using SAS Config named: winlocal
SAS Connection established. Subprocess id is 34172
%load_ext saspy.sas_magic

1 什么是 SAS 程序

SAS 程序是在编辑器窗口中编辑的一段SAS语句,提交后可以在日志窗口中显示有关信息和提示,在输出窗口中显示运行过程的结果。下面通过一个简单的例子,来说明程序的结构。

1.1 12份肝炎患者血清谷丙转氨酶——计算均数

%%SAS
data prg1_1;
    input x @@;
datalines;
60 142 195 80 242 220 190 25 212 38 236 95
;
run;
proc means data=prg1_1;
    var x;
    quit;
Using SAS Config named: winlocal
SAS Connection established. Subprocess id is 25752
SAS 输出

SAS 系统

MEANS PROCEDURE

分析变量: x
数目 均值 标准差 最小值 最大值
12 144.5833333 80.9797487 25.0000000 242.0000000

1.2 程序结构

一个完整的 SAS程序一般由数据步(DATA STEP)和过程步(PROC STEP)两部分组成。

数据步以关键词 DATA 开头,过程步以 PROC 开头,以 RUN 结束。PROC 为英文单词 PROCEDURE 的缩写,读作 prok。

数据步的作用为指定数据集的名称,定义数据集的变量(如变量名称、变量类型等)和读入原始数据。

本例数据步从 data prgl_1; 开始到数据下面出现的 run; 结束,建立了名为 prg1-1 的数据集。如果后面还有 SAS语句,该 run; 可省略不写。

过程步的作用是调用现有的 SAS 过程对指定的数据集进行统计分析。

本例过程步执行的是 means 过程,计算数据集( 默认数据集为 prg1-1 ,可用 data= 数据集 指定要分析的数据集,本例为 prg1-1)中数据的例数、均数、标准差、最小值和最大值等统计量。

过程步从 proc means; 开始,到 quit; 结束。有时也可用 run; 结束。

1.3 程序语法规范

SAS程序由语句组成,每个语句以分号 ; 作为结束符号。同一行中可以有多个语句,一个语句也可以分几行编写。为方便检查和修改,每 行可输人一个语句,每个语句中各个元素以一个或几个空格分隔。输入程序语句时,可在光标闪烁处逐个字母输入,一行语句结束后,按 ENTER 换行,继续输人。值得注意的是, datalines 语句后面的数据必须另起一行输人,数据输入完毕后,必须另起一行,输入分号 ; 表示数据输入结束。

1.4 程序运行

当程序语句被确认正确无误后,可以将程序提交系统运行。提交程序的方法有以下几种:

  1. 在执行指令的文本框中键入 SUBMITSUB ,然后点击“√”或按 ENTER 键。
  2. 点击主菜单中的 运行(run) ,再点击 提交(submit)
  3. 使用功能键 F8 或自己定义的功能键。
  4. 点击工具栏上的 run(submit) 一个奔跑的小人进行运行。

1.5 程序修改

通常情况下,在程序运行完毕后,要先检查日志窗口中的日志,看程序语句有无错误。 如果程序语句编写有误,而且该错误能被 SAS 系统纠正,则在日志窗口中会出现红色下划线和 错误标记,并用绿色字体提示错误,而程序照常运行。

修改程序语句,首先将窗口切换到编辑器窗口,在原来有错误的地方修改程序语句,然后再提交运行。 有时需反复几次,直到日志窗口不再出现错误提示为止。

1.6 程序保存

程序语句编辑无误后,可以将编辑好的程序以文件的形式保存下来,以备以后检查或修改。

保存程序可在命令框中键入指令 file '路径+文件名',该处路径为绝对路径,文件名的后缀必须是 .sas ,而且路径 + 文件名必须用单引号 括起来,如 file 'c:\prgl.sas' 也可以通过 文件 菜单中的 保存 选项来保存程序文件。在出现的 保存 对话框中选择好路径,再键入文件名,此时不必加后缀,因为系统将默认后缀名为 sas 。也可以通过工具栏上的快捷方式保存程序文件,只需点击工具栏上的回就会出现 保存 对话框,然后按上述方法保存文件。

1.7 程序调用

有时,程序已经以文件的形式保存下来了,再作同样的处理时可不必再编辑程序,可以调用已有的程序完成统计运算。调用程序可用指令 INCLUDE 指令后面需加上用单引号括起来的文件所在的绝对路径和带后缀名为 .sas 的文件名,也可以用 文件 菜单中的 打开程序 选项来完成。

也可以用快捷方式调用程序文件,点击工具栏上的 file 图标,以后的操作与上述 打开程序 操作相同同。

2 SAS 帮助

启动 SAS 帮助文档的方法有以下几种, 1. 在命令框中键人 HELP ,然后点击 或按 ENTER 2. 点击主菜单中的 帮助 ,再点击 SAS帮助和文档 。 3. 点击工具栏上的 ? 图标。 4. 使用功能键F1。

要访问特定窗口的帮助信息,请在此窗口处于活动状态时从命令框中发出 HELP 命令,或者点击工具栏上的,或者使用功能键 F1。

要访问特定主题的帮助,可以通过在命令框中键入 help keyword,keyword 值对应需要帮助的值。例如,若需要关于 SAS/EIS 软件的帮助,则键入 help sas/eis;若需要关于 proc ttest 的帮助,则键入 help ttest; 关键字的值不区分大小写。另 外,也可将光标置于编辑器窗口中的关键字(如 ttest )上,再按 F1 键调用关于 PROC ttest 的帮助, 或者直接在 SAS帮助文档中键入该关键字进行搜索。