特别说明:本节【SAS Says】基础篇:SAS软件入门(下),用的是数说君学习《The little SAS book》时的中文笔记,我们认为这是打基础的最好选择。
上节我们说了学习SAS的好处,以及SAS软件入门(上)
本节目录:(老手建议复习一下1.13)
SAS软件入门(下)
1.8 阅读SAS日志
1.9 输出窗口中浏览结果
1.10 创建HTML输出
1.11 SAS数据的逻辑库
1.12 用SAS资源管理器访问SAS数据集
1.13 使用SAS系统选项
SAS软件入门(下)
1.8 阅读SAS日志
在哪找到SAS日志 SAS日志窗口的位置随着你使用的操作环境、选择的模式(视窗、非交互、批处理)、个人的设置的不同而不同。在视窗模式下,提交程序之后,日志窗口默认的位置如下图:
对于批处理和非交互模式的日志则会被写入一个文件中,你需要使用操作环境的命令来查看,一般日志文件的名字与对应的SAS程序名一直,如你的SAS程序命为abc.sas,那么日志文件的命则为abc.log
日志包含的内容日志中虽然有很多琐碎,但也包含了重要的信息。这里有一个将英里转换为千米的程序:
*Create a SAS data set named distance; *Convert miles to kilometers;
DATA distance;
Miles=26.22;
Kilometers=1.61*Miles;
*Print the results;
PROC PRINT DATA=distance;
RUN;
运行之后,SAS的日志窗口会产生一个类似这样的日志:
① 说明了你使用的SAS版本和site。
② 是原始的SAS程序语句
③ 说明了数据步为你创建的数据集名称,观测值数和变量数。它可以帮助你确认你的程序没有丢失观测值,也没有创建你不需要的变量。
④ 这部分显示了数据步和过程步占用的电脑资源。当你使用的是多用户系统,或者处理大型数据而使得SAS运行占用大量时间时,这部分信息可以帮助你检查哪一步比较耗时。
如果SAS程序出现错误,错误信息也会反馈在日志窗口中,说明哪里出错及出错表现。
1.9 输出窗口中浏览结果
你使用的模式不同,产看输出结果的方法也会不同。如果是在视窗模式下提交SAS程序,那么直接在输出窗口查看,如果是批处理和非交互模式下,那么结果就会保存在一个文件里,需要用命令查看。比如使用UNIX系统下的非交互模式,结果会存在一个后缀为.lst的文件里,使用cat或其他更多命令来查看。
输出窗口 提交程序后,结果会出现在输出窗口中,下图是一个输出窗口的例子
打印或保存输出窗口的目录 激活输出窗口的目录,在菜单栏文件(file)下拉菜单中选择打印(print)或保存(save)即可。
结果窗口 结果窗口起到输出窗口的目录作用,当你的输出结果非常多时,结果窗口很有用。它可以让你很清楚的看到输出结果的每一部分。下图是一个方差分析(ANOVA)过程的结果。在这个图中,左边是输出结果的目录,点击 号将其展开,可以看见ANOVA结果的各个部分,双击某一部分,则该部分结果就会位于输出窗口顶部。
打印或保存部分输出 如果要打印结果窗口中显示的某一部分的输出,则需将鼠标移到该部分上,右击,选择打印或保存即可。或者点击一下,使其黑亮,再从菜单栏文件(file)的下拉菜单中选择输出或保存。
1.10 创建HTML输出
如果使用的是SAS视窗环境,那么可以为结果创建超文本标记语言(HTML)格式。
参数选择窗口 选择菜单栏中工具(tools)下拉菜单的选项(options)-参数选择(preferences)。选择结果(result)选项卡,如下图所示:
这个参数选择窗口上,有一个“创建列表(create listing)”选项,默认的输出就是列表输出。下面还有“创建HTML”选项,用来创建HTML。样式(style)选项用来为HTML选择一个风格样式。选择之后,点击OK。
结果浏览窗口和结果窗口 (注意下面提到的三种窗口:结果浏览窗口result viewer,结果窗口resultswindow,输出窗口output window)
一旦选择了HTML输出,每次运行程序的时候都会自动出现一个结果浏览窗口(result viewer),下图显示了在运行了一个均值和输出的程序后,出现两个窗口:结果浏览窗口——显示HTML输出,结果窗口——显示输出的目录。
结果浏览窗口一次只显示输出结果的一个部分,通过选择结果窗口的目录,可以查看其他的部分。值得注意的是,结果窗口给出的目录中,每一个部分都给出了两种相同的目录,一个是链接到输出窗口,一个是链接到结果浏览窗口
保存结果浏览窗口的输出(output of result viewer)的方法:激活结果浏览窗口,选择菜单栏文件(file)下拉菜单的保存(save as)、输出(print)。
可以在style中为输出选择不同的风格,如下图就是D3D的风格:
1.11 SAS数据的逻辑库
SAS逻辑库库只是数据集文件存放的地点。打开SAS视窗模式后,会看到SAS资源管理器窗口(explore),双击逻辑库图标,资源管理器窗口会显示出所有已定义的图标。要返回前一级窗口,选择查看(view)-向上一级(up one level),或者在工具栏中直接点击向上一级图标
逻辑库窗口 打开逻辑库窗口后,除了自己创建的库外,至少会呈现三个逻辑库:sashelp,sasuser,和work,如果安装了某些SAS模块,还有一些特别的逻辑库,比如SAS/GRAPH模块的Maps逻辑库。Sashelp包含了控制SAS会话以及样本数据集的一些信息。WORK是sas数据集的临时储存地点,创建的数据集如果没有指定库,则默认储存在这里,关闭程序时则自动删除数据集。也可以更改默认的库,从而不是临时库。
创建新逻辑库 创建新逻辑库有两种方法:在逻辑库窗口中选择文件(file)下拉菜单的新建(new);或者直接右键——新建。
在新建逻辑库(new library)窗口中,为你的逻辑库起一个名字,这里叫做Mylib,指定库的存放路径。如果不想每次启动SAS都要调用这个库,则勾选启动时启用(enable at startup)即可。
这是一个新建的Mylib逻辑库的视图。
1.12 用SAS资源管理器访问SAS数据集
可以利用SAS资源管理器打开数据集、浏览、编辑,也可以列出数据集的信息,如创建时间和变量名。
目录窗口 打开一个逻辑库,进入一个目录窗口,显示这个库中所有的文件和文件夹。右图的目录窗口中显示Mylib逻辑库有三个文件:Customers,Models,orders。双击某文件,则可以打开这个文件的可视视图。
可视视图 这个窗口允许你创建、浏览、编辑数据集。
列出SAS数据集的属性 用资源管理器还可以列出SAS数据集的一些属性情况,右击某文件,选择下拉菜单的属性(properties)
属性窗口显示了SAS数据集的属性信息,如创建时间、行列数等。
如果选择列(columns)选项卡,则出现数据的列信息
1.13 使用SAS系统选项
SAS系统选项是影响SAS运行的一些参数,比如输出的显示、内存的占用、错误的处理等问题。这些小问题由SAS为你设定好,你也可以改变它。
SAS系统选项的参数不是所有都适合你的操作环境,适合于你的再SAS的帮助文档中给出。可以通过打开SAS系统选项窗口或使用option程序来查看你的SAS系统参数。Option程序的语句如下:
Proc options;
Run;
有四种方法可以指定系统选项的参数,SAS帮助文档会告诉你哪种适合你的操作系统:
1. 系统管理员会创建一个包含了系统选项设定的配置文件,每次SAS启动时都会访问这个文件。
2. 在启动SAS之后,根据系统提示指定系统选项。
3. 如果使用SAS视窗环境,可以从SAS系统选项中改变已选择的选项。
4. 使用OPTIONS语句。
这四种方法按照优先性排列,方法2优先于方法1,方法3优先于方法2,方法4优先于3。如果使用SAS视窗环境,方法3,4最好。
OPTIONS语句 OPTIONS语句是SAS程序的一部分,并可影响之后的所有语句。由OPTIONS关键词开头,后面是相关选项。比如:
OPTIONS LINESIZE=80 NODATE;
OPTIONS语句既不属于数据步也不属于过程步,这个全局变量可以出现在程序的任何部分,但放在开头最有意义,你可以很容易看到哪些选项在发挥作用。如果OPTIONS语句只出现在数据步或者过程步中,那么它会影响那个过程,和下面的过程(If the OPTIONS statement is in a DATA or PROC step,then it affectsthat stepand the following steps.)。注意,后面的OPTIONS语句会覆盖前面的,即以后面的OPTIONS为主。
SAS系统选项窗口 通过这个窗口也可以改变系统选项。可以通过在命令栏中输入“OPTIONS”,或从工具(tools)下拉菜单中选择.
窗口出来后,找到要修改的部分,右击——修改值(modifythe value)即可。
一般选项 下面是一些可能用到的一般系统选项
CENTER|NOCENTER | 输出是否居中,还是左对齐。默认居中 |
---|---|
DATE|NODATE | 今天的日期是否出现在输出的顶部。默认输出 |
LINESEZE=n | 控制输出行的最大长度,n可能的值为64到256 |
NUMBER|NONUMBER | 输出的页面页码是否需要。默认需要。 |
ORIENTATION=PORTRAIT;ORIENTATION=LANDSCAPE; | 指定打印输出的方向。默认竖向(portrait) |
PAGENO=n | 输出页开始的页面。默认为1 |
PAGESIZE=n | 每个页面输出的最大行数。可能的值为15到32767 |
RIGHTMARGIN=nLEFTMARGIN=nTOPMARGIN=nBOTTOMMARGIN=n | 指定打印输出的边缘大小。默认0.00英寸(Specifies size of margin(such as 0.75in or 50px)to be used for printing output.Default:0.00in.) |
YEARCUTOFF=yyyy | 设定起始年份 |