首页 SAS软件应用

SAS软件应用

举报
开通vip

SAS软件应用 第五章 SAS 软件应用 一、说明 (一)SAS 软件简介 SAS 软件系统全称为 Statistics Analysis System。SAS 是用于决策支持的大 型集成信息系统,统计分析功能是它的重要组成部分和核心功能。SAS 现在的版本 为 9.0 版,大小约为 1G。经过多年的发展,SAS 已被全世界 120 多个国家和地区的 近三万家机构所采用,直接用户超过三百万人,遍及金融、医药卫生、生产、运输、 通讯、政府和教育科研等领域。在数据处理和统计分析领域,SAS 系统被誉为国际 上的标准软件系统...

SAS软件应用
第五章 SAS 软件应用 一、说明 (一)SAS 软件简介 SAS 软件系统全称为 Statistics Analysis System。SAS 是用于决策支持的大 型集成信息系统,统计 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 功能是它的重要组成部分和核心功能。SAS 现在的版本 为 9.0 版,大小约为 1G。经过多年的发展,SAS 已被全世界 120 多个国家和地区的 近三万家机构所采用,直接用户超过三百万人,遍及金融、医药卫生、生产、运输、 通讯、政府和教育科研等领域。在数据处理和统计分析领域,SAS 系统被誉为国际 上的标准软件系统,并在 96-97 年度被评选为建立数据库的首选产品。堪称统计软 件界的巨无霸。 SAS 软件是模块式结构,最常用的 3 个模块分别是 SAS/BASE(基础)、 SAS/STAT(统计)和 SAS/GRAPH(图形), 还有 SAS/ETS(预测)、SAS/IML(矩阵运算)和 SAS/QC(质量控制)等约 20 个模块。这些模块可单独使用、也可互相配合起来使用。 本章实验将利用前 3 个模块作为实现统计计算和绘图的工具,讲述统计理论与 统计软件结合应用的方法和技巧,以期达到简单明了、实用方便、相得益彰之效果。 (二)本章教学目的与要求 SAS 软件功能强大,模块众多,很难在短时间内完全掌握。因而本章首先介绍 SAS 软件应用的基础知识,然后通过两个实验介绍 SAS 软件中可以运用菜单操作的 模块,分别为 SAS/ASSIST 作图视窗和 SAS/INSIGHT 数据探索窗口,然后重点介绍 SAS 编程知识。实验的重点是利用 SAS 软件的编程知识进行统计分析。要求学生掌 握 SAS 软件应用基本技术、编程技术,熟悉 SAS 软件中的 SAS/BASE、SAS/ASSIST 作图视窗和 SAS/INSIGHT 三个模块的使用,能够运用 SAS 软件的编程技术进行统计 分析。 二、实验 实验一 SAS 软件应用基础 实验目的及要求 本实验主要是引导学生初步认识 SAS 软件的窗口、特点;程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 的基本功能、基 本思想,以及 SAS 软件的基本操作。 实验内容及步骤 (一) 认识 SAS 界面 启动 SAS 软件后,呈现如图 4-1 所示的窗口。SAS 系统提供强有力的交互式用户界 面,成为显示管理系统。显示管理系统。主要有五个窗口: Editor 窗口:提供一个编写 SAS 程序的文本编辑器 Log 窗口:显示有关程序运行信息 Output 窗口:显示程序的输出 Explorer 窗口:管理 SAS 系统中的文件,要查看和管理操作系统中的所有文件,可 以使用收藏夹窗口 Result 窗口:管理输出结果 发布显示管理系统命令有四种方式: 在命令框直接键入命令、按功能键、使用下拉菜单、使用工具栏。 图 4-1 SAS 界面 (二)SAS 程序的结构 最简单的 SAS 程序由一个 SAS 数据步(SAS DATA STEP)和一个 SAS 过程步(SAS PROCEDURESTEP)两部分组成。数据步以 DATA 语句开头, 其作用是建立 SAS 数据集 (SAS DATA SET)。具体地说,就是建立起变量与数据之间的联系,使数据能方便地被 SAS 过程所利用;过程步以 PROC 语句开头,其作用是激活 SAS 过程。通常, 一个 SAS 程序中可包含多个 SAS 数据步, 也可包含多个 SAS 过程步。每一个 SAS 语句用一个 分号结束,一行中可写多个 SAS 语句。 下面就如何实现多元线性回归分析为例,展示 SAS 程序的结构。 数据步的第 1种书写形式: 数据步的第 2种书写形式: MREG1.PRG(外部文件名) MREG2.PRG(外部文件名) DATA abc; DATA abc; INPUT x1-x4 y; INFILE '盘名:文件名'; CARDS; INPUT x1-x4 y; 7 26 6 60 78.5 用这种形式书写数据步的 1 29 15 52 74.3 前提是: 将左边的 13 行 5 列数 11 56 8 20 104.3 据事先用文件名存入软盘(或 11 31 8 47 87.6 硬盘)上, 然后, 用 INFILE 语 7 52 6 33 95.9 句调用。如: 软盘插入 A驱动 11 55 9 22 109.2 器中, 文件名为 w.dat, 则 3 71 17 6 102.7 INFILE 语句的具体写法是: 1 31 22 44 72.5 INFILE 'a:w.dat'; 2 54 18 22 93.1 这种形式的优点是数据 21 47 4 26 115.9 步简炼, 数据可反复被调用。 1 40 23 34 83.8 下面是调用 reg 过程的过程步: 11 66 9 12 113.3 PROC REG; 10 68 8 12 109.4 MODEL y=x1-x4; ; RUN; 过程步与右边相同。 [说明] MREG1.PRG和 MREG2.PRG都是SAS程序的外部文件名,由用户定义, 仅在存 文件、调文件时有用,运行 SAS 时不应将它写出; DATA 是数据步开头的标志, 其后的 abc(如果在程序中不引用此名,也可省略不 写)为即将创建的SAS数据集名,由用户定义,最多可含8个字符(注意:数据集名通常 不含“.”); INPUT语句定义了5个变量名,每执行一次,读取全部数据中的一行,依次赋给变 量 x1-x4 和 y; CARDS 语句标志着其后为数据;如果数据中含分号,需将 CARDS 改成 CARDS4,并 用 4个连续的分号“;;;;”作为数据步的结束标志; 仅有“;”的这一行是一空语句行,标志着数据步的结束; PROC 是过程步开头的标志,其后的 REG 为实现多元回归分析的过程名; MODEL 语句要求建立以 y为因变量、x1-x4 为自变量的多元线性回归方程; RUN 语句将通知 SAS 系统执行它前面的每一个 SAS 语句。 (二) SAS 程序运行方式 (1)非交互方式 C>cd sas(回车) C:\SAS>sas a:w.prg(回车) 稍等片刻,运行情况记录自动存在 C\SAS\W.LOG 中,如果 SAS 程序运行正常, 则 运行结果自动存在 C\SAS\W.LST 中。运行结束后,可按如下方式操作: C:\SAS>dir w.*(回车) 如果 W.LOG 和 W.LST2 个文件都存在,可用用户熟悉的办法对 W.LST 文件进行编 辑、输出结果;如果只有 W.LOG 文件,应该查看该文件,了解 SAS 程序出错的原因, 修改后再重新运行。 (2)交互地显示管理方式(简称 SAS DMS) C>cd sas(回车) C:\SAS>sas(回车) 进入 SAS DMS 后的状态是屏幕上出现了 3 个基本窗口,从上到下依次为 OUTPUT(输出窗口)、LOG(记录窗口)和PROGRAM EDITOR(缩写为PGM, 程序编辑窗口)。 此后的一切操作几乎都是在窗口内完成,SAS 系统共设置了 17 个窗口,其它 14 个窗 口称为特定的窗口。如:HELP(帮助窗口)、KEYS(键窗口)等。每一个窗口的入口处写 着“COMMAND===>”,该行称为命令行,即发送 SAS 命令的地方。发命令之前,应将光 标移到该行“>”号之后并且至少留一空格,然后,键入某个 SAS 命令,回车后生效。 SAS程序可直接从PGM窗口有行号的区域内逐行通过键盘输入(注意: 各行号后 必须留 1个空格,否则,输不进去!);也可从 PGM 窗口的命令行上用 INCLUDE(缩写为 INC)命令将事先存在软盘(或硬盘)上的SAS程序调入PGM窗口。当此窗口内有了SAS 程序后, 只需按一下 F10 功能键就可运行 SAS。运行情况记录立即显示在 LOG 窗口 内,如果 SAS 程序有错误, 则用红色字体给出错误信息,并停止执行。一旦有了运行 结果,立即显示在 OUTPUT 窗口内。 值得提醒的是:显示在 OUTPUT 窗口内的内容不适合直接送到打印机上去,因为 各页均有标题,一个标题下的内容无论多么少,都将占一页,浪费打印纸。最好把它移 到 PGM 窗口, 经过编辑后再输出。具体移动方法后面另作介绍。 (3)填空方式 一旦进入了 SAS DMS 状态后,可先在 PGM 窗口输入 SAS 程序的数据步,并以 RUN 语句结束。当按 F10 键后,就建立了一个临时的 SAS 数据集。将光标移到 PGM 窗口的 命令行上, 键入 MENU 后回车,便进入了“SAS 过程菜单系统”窗口,在窗口的 “select option ===>”行上键入过程名,回车后显示关于该过程的一张 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf ,按要求 填完这张表,按 F10 键就自动生成了过程步,同时发送给 SAS 系统去执行。如果所填 的项目符合要求,其计算结果就显示在 OUTPUT 窗口内;反之,可在 LOG 窗口内看到红 色的出错信息。也可在数据步语句之后使用 DM 语句直接进入 MENU 窗口,并调用某个 过程,其语句的写法是:DM 'menu; 过程名'; 。 注:上述 3种 SAS 运行方式的比较 第 1 种方式比第 2种方式节省机器内存, 当某些 SAS 程序用第 2种方式运行出 现内存不够现象时,改用第 1种方式往往有效;第 2种方式十分直观,发现和修改错 误都非常方便; 第 3种方式很难保证每个空格都能填写正确,往往需反复填写几遍 才能成功,仅当要写的过程步语句和选择项都很多时,采取这种方式产生过程步才会 觉得比较省力。 (四)使用 SAS 必须掌握的几组重要命令 SAS 命令很多,这里仅给出使用 SAS 必须掌握的几组重要的命令,详细内容请从 本书附录中查找。命令后中括号里的内容为可选项,使用时中括号不应写出。 1、显示管理全程命令(可在任一窗口的命令行上使用,回车后生效) (1)窗口管理命令(可用 HELP 31 2 命令显示) BYE(或 ENDSAS) 彻底退出 SAS DMS,回到 SAS 子目录状态; END 保留特定窗口内修改过的内容并退出该窗口; CANCEL 取消特定窗口内修改过的内容并退出该窗口; X 保留窗口内信息,临时退出 SAS DMS,回到 DOS 状态,可执行 各种 DOS 命令; EXIT 在使用 X命令后的 DOS 状态下,快速返回 SAS DMS。 (2)翻卷命令(可用 HELP 31 4 命令显示) TOP(到顶) BOTTOM(或 BOT)(到底) RIGHT MAX(右移最大量) N (使从上到下的第 N行内容成为命令行下的第 1行) (3)标记、截取和连接命令(可用 HELP 31 6 命令显示) ①标记命令 MARK(标记若干行); MARK CHAR(标记字符串); MARK BLOCK(标记一矩形区域); UNMARK(取消标记)。 前 3 个标记命令的操作方法:先在命令行上键入命令,再把光标移至欲标记内容 之首,按回车键;再在欲标记内容之尾,重复操作 1次。若利用相应的功能键,则可分 别将光标移至欲标记内容之首、尾各按 1次功能键即可。UNMARK 命令只需执行一次 即可。 ②截取命令 STORE [BUFFER=文件名] ; CUT [BUFFER=文件名]。 把标记后的内容直接存入缓冲区或用给定的文件名存入缓冲区。如果省略中括 号里的内容,则后一次存入的内容就替代了前一次存入的内容。 STORE 与 CUT 的区别是:用 STORE 时,标记后的内容仍保留在原处;用 CUT 时,标 记后的内容从原处被切除,CUT 不能在 OUTPUT 窗口上使用。 ③连接命令 PASTE [BUFFER=文件名] 把用 STORE 或 CUT 命令存入缓冲区的内容调到光标所在的窗口里来。操作方法: 先在命令行上输入命令,光标下移到有行号的编辑区域内,再按回车键。 2、文本编辑命令之一(可用 HELP 31 6 命令显示) 本组命令在命令行上使用,回车后生效,其中最常用的命令有: AUTOWRAP ON 使一行中超过 136 个字符部分自动移到下行;否则, 将被删除; CLEAR 清屏; FILE 'PRN:' 把窗口内的文件送到打印机上去; FILE '盘名:文件名' 文件存入指定的盘; INCLUDE '盘名:文件名' 把指定的盘上某文件调入窗口。 3、文本编辑命令之二(可用 HELP 31 6 34 和 HELP 31 6 35 命令显示) 本组命令只在 PGM 窗口内行号上使用,其中一部分可单独使用, 另一部分需与操 作定位命令配合起来使用。如果一个完整的命令需通过 2行或 3行上发送命令才能 完成, 则中间过程都要靠移动光标键来实现,最后按一次回车键使之生效。 (1)单行命令 ①只在一行上使用的一般命令(回车后生效) CL 把当前行上的字符由大写改成小写; CU 把当前行上的字符由小写改成大写; D[N] 删除自当前行起的 N 行,D 或 D1 都表示只删除当前行,其他命令中 N 的 用法与此相似; I[N] 在当前行之后插入 N个空行; IB[N] 在当前行之前插入 N个空行; JC[N] 以第 N列为中点, 使当前行内容置中; JL[N] 自左至右的第 N列为当前行的第 1个字符的位置; JR[N] 自左至右的第 N列为当前行的最后 1个字符的位置; R[N] 使当前行的内容在该行之后复制 N行; >[N] 使当前行内容右移 N个字符; <[N] 使当前行内容左移 N个字符; TF[N] 自当前行起, 使相邻的所有行中的每一行上保留 N 个字符( 含字符间 的空格); TS[N] 将当前行分裂成两行,并使这两行之间留出 N个空行。操作方法是: 先 键入命令, 光标右移至欲分裂处,再按回车键。 ②只在一行上使用的特殊命令(回车后生效) COLS 在当前行上显示 1个水平标尺; MASK 标记当前行的内容,在所需之处可用 I、IB 命令反复获得该行的内容; TA[N] 在当前行上设置跳格标尺,其标志是每隔 N个字符处有一个 T字符; D 在键入上述 3个特殊命令的行号上,键入 D命令,则可取消特殊命令。 (2)2 行上使用的块命令(操作方法:第 2次键入命令后再按回车键) 功能:使键入命令的两行及其中间的所有行(简称为“文件块”)上的内容作同 样的操作。 CCL 使文件块的字符由大写改成小写; CCU 使文件块的字符由小写改成大写; DD 删除文件块的全部内容; JJC[N] 以第 N列为中点, 使文件块的内容置中; JJL[N] 自左至右的第 N列为文件块的第 1个字符的位置; JJR[N] 自左至右的第 N列为文件块的最后 1个字符的位置; RR[N] 使文件块的内容在该行之后复制 N次; >>[N] 使文件块的内容右移 N个字符; <<[N] 使文件块的内容左移 N个字符。 (3)操作定位命令 A 即 AFTER 之意,操作的结果将出现在键入 A的那一行之后; B 即 BEFORE 之意,操作的结果将出现在键入 B的那一行之前; O 即 OVERLAP 之意,操作的结果将重叠于键入 O的那一行之上。 (4)与操作定位命令配合使用的命令(最后一步按回车键) ①只在一行上使用的单行命令 C[N] 把自当前行起的 N行内容拷贝到由 A、B命令指定的位置上去; M[N] 把自当前行起的 N行内容移到由操作定位命令指定位置上去。 ②在 2行上使用的块命令 CC[N] 把文件块的内容拷贝到由 A、B命令指定的位置上去; MM[N] 把文件块的内容移到由操作定位命令指定的位置上去。 (五)实际运行 SAS 的步骤 STEP1:开机,其先后顺序为“打印机、显示器、主机”,此时,机器所处的状态 是: C>; STEP2:在“C>”状态下,进入 SAS DMS 状态,其方法是(小写字母由用户输入, 大写也可): C>cd sas(回车); 此时的状态是:“C:\SAS>”; C:\SAS>sas(回车) STEP3:此时,机器已进入 SAS DMS 状态,屏幕上出现了 3 个基本窗口,设本章 STEP3节中的 SAS程序 MREG1.PRG和 MREG2.PRG已存在软盘上,现将这张盘插入A驱 动器内,并将光标移到PGM窗口的命令行上,键入如下的命令:inc 'a:mreg1.prg'(回 车), 此时,已将名为 MREG1.PRG 的 SAS 程序调入了 PGM 窗口; STEP4:根据用户的具体资料修改这段现成的 SAS 程序,假定用户的资料中含有 8 个自变量 x1-x8、1 个因变量 y,共 50 行(每行 9 个数据),称为 50 个观测 (observations),于是,修改方法如下: 将 MREG1.PRG 程序中的第 2句“INPUT x1-x4 y;”修改成“INPUT x1-x8 y;”, 将光标移到第4行的行号上键入DD,再将光标移到第16行的行号上键入DD并回车, 胀删除了程序中原有的数据;再将光标移到 CARDS 语句所在的行号上键入 I51 并回 车,就在该行之后插入了 51 个空行,用户可将 50 个观测一一输入,其他内容可不修 改; 也可在PGM窗口内先输入50行9列数据并用文件名存在盘上,此时,只需调用并 修改 MREG2.PRG 程序中第 2句的文件名以及将第 3句中的 x4 改为 x8 即可; STEP5:按 F10 键,便开始运行 SAS 程序; STEP6:如果程序中因分号使用不当或忘写等错误,当程序自动停止执行时, 按 F3 键进入 LOG 窗口,细查原因后,按 F6 键进入 PGM 窗口,再按 F9 键招回刚运行过的 那段 SAS 程序进行修改, 然后,从第 5步开始重新操作; STEP7:如果有了运行结果,按 F4 键进入 OUTPUT 窗口。最好用下面两种方法之 一将结果调到 PGM 窗口进行编辑后再输出: 1、在 OUTPUT 窗口的命令行上 2次使用 MARK 命令,对输出结果进行标记, 再用 STORE命令把标记后的内容存入缓冲区,按F6键进入PGM窗口,在此窗口的命令行上 用 PASTE 命令调出刚存入缓冲区的内容; 2、在 OUTPUT 窗口的命令行上使用命令: FILE '盘名:文件名'(回车),胀把输出 结果存到软盘或硬盘上去了,按F6键进入PGM窗口, 在此窗口的命令行上使用命令: INC '盘名:文件名'(回车),这样就把输出结果调入了 PGM 窗口; STEP8:在 PGM 窗口编辑后的内容可直接送到打印机上去, 命令是: FILE 'PRN:'(回车);也可存到盘上去, 命令是: FILE '盘名:文件名'(回车); 如果 还要仅其他问题,可重复操作上述第 3~8步; STEP9:关机,其先后顺序为“主机、显示器、打印机”。 实验二 SAS/ASSIST 视窗 实验目的及要求 SAS/ASSIST 视窗能使初学者较快地学会使用 SAS 软件而无需编程。因而本实验特地 介绍 SAS/ASSIST 视窗这一 SAS 界面。本实验要求学生熟练掌握 SAS/ASSIST 视窗的 使用方法。 实验内容及步骤 (一)ASSIST 视窗的启动 ASSIST 视窗的启动方法也是比较多的。 方法一:step1:单击 Globals=> SAS/ASSIST,系统将开始启动 ASSIST 视窗,几秒 钟后进入 ASSIST 视窗主界面如图 4-2 所示: 图 4-2 ASSIST 视窗主界面 ASSIST 视窗的正上方为主菜单名(Primary Menu),下面的 12 个按钮分别表示了 在该视窗中可用的各种功能。常用的按钮有: TUTORIAL 按钮:由此可以进入 SAS 提供的教学程序 DATA MGMT 按钮:由此进入数据库管理模块 GRAPHICS 按钮:由此进入绘图模块 DATA ANALYSIS 按钮:由此进入统计分析的有关模块 INDEX 按钮:提供全部可用命令的索引,如果对菜单项的分类不清楚,可以从这 里直接查找所需功能 EXIT 按钮:使我们可以退出 ASSIST 视窗 我们主要介绍统计分析功能,对于其它功能,有兴趣的同学可以自行摸索。 Step2:单击 DATA ANALYSIS,则视窗进入二级菜单――数据分析菜单(Data Analysis Menu),它的布局和主菜单界面基本一致,各种按钮中常用的有: ELEMENTARY 按钮:提供基本的统计分析,如描述、相关、频数表 REGRESSION 按钮:提供线性回归、Logstic 回归和时间序列回归统计 ANOVA 按钮:提供方差分析、非参数检验和 t检验 MULTIVARIATE 按钮:提供主成分分析等多元分析方法 QUALITY CNTL 按钮:进入质量控制模块 TIME SERIES 钮:提供时间序列分析功能 DATA MGMT 按钮:与主菜单的该按钮相同,进入数据库管理模块 INDEX 按钮:提供全部可用功能的索引 GOBACK 按钮:退回主菜单 HELP 按钮:启动 HELP 视窗 图 4-3 ASSIST 的数据分析界面 (二) ASSIST 视窗的使用方法 下面我们以一个例子来说明 ASSIST 视窗的使用方法。 例 4-1:现有数据集 SASUSER.CLASS 记录了某班学生的年龄、身高和体重情况,我 们要对该数据进行简单的描述。 OBS Name Sex Age Height Weight 1 Alice F 13 56.5 84.0 2 Becka F 13 65.3 98.0 3 Gail F 14 64.3 90.0 4 Karen F 12 56.3 77.0 5 Kathy F 12 59.8 84.5 6 Mary F 15 66.5 112.0 7 Sandy F 11 51.3 50.5 8 Sharon F 15 62.5 112.5 9 Tammy F 14 62.8 102.5 10 Alfred M 14 69.0 112.5 11 Duke M 14 63.5 102.5 12 Guido M 15 67.0 133.0 13 James M 12 57.3 83.0 14 Jeffrey M 13 62.5 84.0 15 John M 12 59.0 99.5 16 Philip M 16 72.0 150.0 17 Robert M 12 64.8 128.0 18 Thomas M 11 57.5 85.0 19 William M 15 66.5 112.0 则用 ASSIST 视窗的操作方法如下: Step1: 单击数据分析菜单中的按钮 ELEMENTARY ,则系统开启一个新的 ELEMETARY 对话框如 4-4 图所示: 图 4-4 Step2:请注意 Summary statistics 是以深色显示的,表示该项为默认值。用鼠标 单击该项目,则系统开启下一个对话框――Summary Statistics 对话框如图 4-5 所 示: 图 4-5 描述统计量对话框 Step3:Summary Statistics 对话框就是统计描述的主窗口,它由一些按钮和复选 框(Check box)组成,注意 Active data set:按钮和 Variables:按钮的右侧写 着“-REQUIRED-”,表示这两项必须加以定义,否则程序没有足够的信息来运行。 首先定义所分析的数据集:单击 Active data set,则系统开启新对话框如图 4-6 所示。 图 4-6 Step4:在该对话框中列出了可用的所有数据集名,从左到右依次为库名、数据集 名和数据集类型,拖动滑块使 SASUSER.CLASS 数据集出现在窗口中,用鼠标单击数 据库名,由于当前数据集只能有一个,所以对话框自动关闭,退回 Summary Statistics 对话框。如果再次进入 Active data set 对话框,则可见 SASUSER.CLASS 数据集的左侧有一个星号,如图 4-7 所示,这表示该数据集已被选中为当前数据集。 如果要改变选择,直接单击需要的数据集名,系统会自动替换。 图 4-7 Step5: 请注意图 4-7,Active data set:按钮的右侧显示为 SASUSER.CLASS,表 示当前分析数据集为 SASUSER 库的数据集 CLASS。现在我们可以定义分析变量了: 单击 Variables,系统开启一个变量选择对话框供我们选择变量。 图 4-8 Step6:SASUSER.CLASS 中可供分析的连续变量均显示在变量窗口中,我们想对这三 个变量都做描述,则依次单击三个变量名,单击后变量名的左侧出现一个星号,表 示该变量被选中;再单击一次则星号消失,表示撤消选择。将三个变量全部选中, 如图 4-9 所示。然后后按 OK,该窗口关闭,系统退回上一级窗口。 图 4-9 Step7:Variables 按钮右侧显示为 AGE、HEIGHT、WEIGHT 三个变量。现在我们输入 的信息已经满足了运行程序的最低要求,但是我们还想将结果按性别分开输出,则 单击 Class:,系统开启变量选择窗口如图 4-10 所示。用鼠标单击变量名“SEX”, 再单击 OK, 图 4-10 此时变量描述窗口如图 4-11 所示: 图 4-11 Step8:变量的选择告一段落,现在开始选择所需要的统计量。变量描述窗口的下 方为一些复选框,右侧为复选框名,左侧为复选框的状态。以 SUM 复选框为例,用 鼠标单击 SUM 左侧的小方框,此时该方框内打勾,表示该项被选择;再点一下则复 选框恢复原状态。如此选择所需的全部统计量,最后变量描述窗口的状态如 4-12 图所示。 图 4-12 Step9:选择下拉菜单 Locals=〉Run,则系统开始执行程序,最后 OUTPUT 视窗自动 弹出,显示最终的运行结果。 实验三 SAS/INSIGHT 的数据探索窗口 实验目的及要求 要求掌握 SAS/INSIGHT 的数据探索功能。包括对一维数据,制作直方图、盒形图、 马赛克图,对二维数据,制作散点图、曲线图、散点图矩阵,对三维数据制作旋转 图(三维散点图)。 实验内容及步骤 (一)一维方法 除了 SAS/GRAPH 提供了丰富的作图工具之外,SAS/INSIGHT 还提供了十分方便的数 据探索功能。对一维数据,可以作直方图、盒形图、马赛克图,对二维数据,可以 作散点图、曲线图、散点图矩阵,对三维数据可以作旋转图(三维散点图)。在图 上可以选定一些观测,这些选择结果会同时反映在数据窗口和其它图中。 以例 4-1 数据集为例。 1、直方图 Step1:选定变量 HEIGHT,用“Analyze=〉Histogram=〉Bar Charts(Y) ”菜单可 以打开一个图形窗口生成身高的分布直方图,如图 4-13。 图 4-13 直方图 Step2:单击这一条形选中在此范围的观测,可以发现这时数据窗口的相应观测也 被选定了,被选中的是 Philip,身高 72 英寸。如果双击某一条形,比如 60 到 65 的条形,就可以在选定相应观测的同时弹出一个检查观测窗口,如图 4-14 所示 窗口中显示各被选中的观测序号,以及其中一个观测的各变量值。这样可以很方便 地检查图中各部分所对应的观测。 图 4-14 检查观测窗口 说明:对连续数据(Int 型)作直方图可以反映其分布情况,对离散数据(Nom 型) 作直方图同样可以反映其分布,即取每一个离散值的比例大小(频数分布)。比如, 在作了身高的直方图后,选定变量 SEX,对其作直方图,则结果打开一个新图形窗 口作出只有两个条形的条形图,一个标记为 F,另一个标记为 M,高度分别为 9和 10,即有 9个女生,10 个男生,男女比例为 10 :9。单击标 F的条形,可以看到数 据窗口中所有女生的观测被选定,另外还可以看到已作的身高的直方图也发生了变 换,身高的每一个条形都分成了颜色不同的两部分,其中下面的一部分代表女生。 在用 Analyse 菜单中的作图命令作图时如果没有选定的变量则弹出一个对话框提问 用哪一个变量作图,如果对身高作图,只要选 HEIGHT 然后按 Y钮即可。 2、盒形图 Step1:选定变量 HEIGHT 然后用“Analyse=〉Box Plot=〉Mosaic Plot”可以作出 图 4-15。 图 4-15 盒形图 Step2:单击或双击盒形图的某一部分(盒子上半部或下半部、触须线、极端值) 可以选定观测。盒形图可以方便地比较按某分组变量分组后的分布情况。 Step3:启动“Analyze=〉Box Plot/Mosaic Plot”菜单,弹出选择变量的对话框 如图 4-16。 图 4-16 选择变量的对话框 Step4:选身高为 Y变量,选性别为 X变量,画出的图见图 4-17。 图 4-17 图 4-17 中有两个盒形图,女生一个,男生一个。从图 4-17 中看出,男生身高 普遍高于女生,且女生身高分布左偏较男生严重。这种并排盒形图可以十分直观地 比较两个相关的分布。作盒形图时指定多个 Y变量也可以作出并排的盒形图,比如, 同时指定身高和体重作为 Y变量作盒形图就可以生成身高和体重的并排的盒形图。 3、马赛克图 Step1:Analyze 菜单的“Box Plot/Mosaic Plot”命令对连续型变量作盒形图,对 离散型变量将作马赛克图。 Step2:选“Values”菜单后标出了男女的人数、百分比。如图 4-18 所示。 图 4-18 马赛克图 Step3:先把 SASUSER.CLASS 中变量 AGE 的量测水平由 Int 改为 Nom,然后取消所 有变量的选定,启动“Box Plot/Mosai Plot ”,选 SEX 为 Y 变量,选 AGE 为 X 变 量,作图如图 4-19。 图 4-19 说明:这种图的好处是直观显示了两个变量每种取值组合的观测个数和比例。单击 或双击其中一个方块可以迅速选中一个分组,比如双击年龄为 11 性别为女(F)的 方块可以看到这一组的学生。 (二)二维数据探索 SAS/INSIGHT 可以作曲线图、散点图、散点图矩阵,可以在散点图中刷亮观测。 1、曲线图 曲线图有一个取值由小到大的 X变量,有一个或几个 Y变量,以 X变量为横坐标对 Y 变量画曲线。为了演示曲线图,打开 SASUSER.AIR 数据集(用“File=〉Open”菜 单)。这个数据集是某城市一周的每小时记录的空气污染情况。变量 DATETIME 是记 录的日期时间,为特殊 SAS 格式数据,变量 DAY 为星期几,HOUR 为几点钟,CO、O3、 SO2、NO、DUST 分别为一氧化碳、臭氧、二氧化硫、一氧化氮、粉尘的浓度,WIND 为风速。要画一氧化碳的曲线图,可以 Step1:在未选任何变量的情况下用“Analyse=〉Line Plot”,弹出变量对话框(图 4-20)。 图 4-20 变量对话框 Step2:选 DATETIME 为 X 变量,CO 为 Y 变量,可以画出 CO 的时间序列曲线图,图 4-21 所示。 图 4-21 Step3:在图形窗口中再用主菜单的“Edit=〉Window=〉Renew”,把 WIND 也作为 Y 变量,画出的图就有两条不同颜色的曲线,单击外面的 CO 变量符号和 WIND 变量符 号可以加重显示对应的曲线以区分这两条曲线。见图 18 。图中被选的点是风速的 最高值,时间是 11 点。注意在一条曲线中被选在另一条曲线中也被选。从此图可以 看出风速对污染有较明显的影响,风大时污染较轻。 2、散点图 例 4-2:仍以例 4-1 数据为例,做身高与体重的散点图。 Step1:在生成散点图时先不在数据窗口选 X、Y变量而是直接启动“Analyze=〉 Scatter Plot”菜单,弹出变量对话框,在其中选 X、Y变量并把 NAME 指定为 Label 变量。这时,单击散点图中最左下角的那个点可以显示名字 Sandy,单击最右上角 的那个点可以显示 Philip。选多个点可以用附加选中的办法(Shift 或 Ctrl 单击)。 Step2:“Analyze=〉Scatter Plot”,就可以生成以体重为纵轴以身高为横轴的 散点图(见图 4-22)。 图 4-22 散点图 从图可以看出体重与身高有明显的线性相关关系。 Step3:在图中拖动鼠标光标可以拖出一个小长方形,在这个长方形中的点都被选 中,称它为刷子。选中的点在数据窗口也被选中,可以在数据窗口翻页查看,或用 数据窗口的 Find Next 菜单命令查看,或在数据窗口用 Move to First 菜单命令把 选中的点移到最前查看。双击长方形(刷子)可以弹出检查观测窗口,在那里可以 逐个查看选中的观测内容。 Step4:先把年龄的量测水平设为连续型(Int),在数据窗口选定年龄、身高、体 重,可以作出图 4-23。 图 4-23 (三)三维数据探索 SAS/INSIGHT 对三维数据可以作称为旋转图的三维散点图。 例 4-3:仍以例 4-1 数据为例,作三维探索图。 Step1:在数据窗口依次选定 AGE、HEIGHT、WEIGHT,然后启动菜单“Analyze=〉 Rotating Plot”,可以生成一个三维散点图。图 4-24 是经过旋转后的图形。 图 4-24 三维散点图 Step2:单击左侧的旋转方向图标。按住旋转图标可以连续旋转。按住 Shift 或 Ctrl 再旋转可以实现自动旋转。当鼠标光标移到图形的四个角时光标形状变成了手的形 状,单击可以旋转,拖动可以连续旋转,拖动时“抛出”可以自动旋转。自动旋转 中可以随时拖动图形以改变旋转方向。 图 4-25 旋转图的菜单(图 4-25)中, Ticks 用来调整坐标轴刻度 Axes 可以选坐标轴以数据中心点为原点、以左端点为原点、不画坐标轴 Observations 指定画出所有观测,如果没有选中此项则只画被选中的观测 Rays 从原点向每个散点画射线 Cube 在散点四周画一个长方体盒子 Depth 可以使离视点近的点画得较大,离得远的点画得较小 Fast Draw 指定用另一种较快的绘图方法绘图 Markers Sizes 选择散点的大小 另外,SAS=〉INSIGHT 还提供了很强的调整绘制的图形的功能。比如,调整坐标轴 的画法,点的大小、符号、颜色,隐藏某些观测,等等。有兴趣的同学可以自己研 究。 实验四 SAS 编程技巧 实验目的及要求 本实验主要是引导学生初步掌握利用 SAS 软件编程的基本语句、基础知识,要求学 生学会在 SAS 软件中进行简单的编程。 实验内容及步骤 本实验主要介绍如何产生数据集,而且由于数据集大部分由数据步完成,我们把精力 主要集中于数据步上。 (一)数据步流程 例 4-4: 某小学 10 名 9 岁男学生 6个项目的智力测验得分资料列于下表中。 表 4-1 某小学 10 名 9 岁男学生 6项智力测验得分结果 被 测 试 者 编号 ID 常识 X1 算术 X2 理解 X3 填图 X4 积木 X5 译码 X6 1 14 13 28 14 22 39 2 10 14 15 14 34 35 3 11 12 19 13 24 39 4 7 7 7 9 20 23 5 13 12 24 12 26 38 6 19 14 22 16 23 37 7 20 16 26 21 38 69 8 9 10 14 9 31 46 9 9 8 15 13 14 46 10 9 9 12 10 23 46 STEP1: 变量和观测 这是 SAS 数据集的 2个基本概念。可以这样看待它们的关系,SAS 对各变量的操 作都是在各观测内进行的。从每一个观测对象身上观测到 n 个变量的具体取值,在 SAS 中, 把这 n个数值写在一行上,称为 1个观测。如表 4-1,共有 10 个观测,每个观 测包含 7个变量(含编号)的取值。 STEP2:建立 SAS 数据集方法 [SAS 程序] [EXAMPLE.SAS] [说明] (1)DATA 语句指明我们要建立一个名字为 A DATA a; 的数据集,当该段程序执行完以后,我们可以在 DOS 目 INPUT id x1-x6; 录 C:\SAS\SASWORK 下看到一个文件 A.SSD,其中 A CARDS; 为我们在 SAS 程序中 指定的数据集名,SSD 为 SAS 系 1 14 13 28 14 22 39 统自动提供的扩展名, 表明该文件为 SAS 数据集(SAS 2 10 14 15 14 34 35 DATA SET), SAS 数据集是 SAS 系统的内部文件, 3 11 12 19 13 24 39 只能被 SAS 系统正常引用。(2)INPUT 语句指明了 4 7 7 7 9 20 23 将要建立的 SAS 数据集包含的变量,其中,ID 代编 5 13 12 24 12 26 38 号,X1—X6 分别代表常识、算术、理解、填图、 6 19 14 22 16 23 37 积木、和译码这6个方面的得分。 值得注意的是: 象 7 20 16 26 21 38 69 X1-X6 这样的简写的列表能够被 SAS 系统接受, 为 8 9 10 14 9 31 46 SAS 程序的书写提供了极大的方便,程序也显得十分 9 9 8 15 13 14 46 简洁。(3)CARDS 语句表明下面是用于建立 SAS 数 10 9 9 12 10 23 46 据集的数据流,数据流以另起一行的一个分号为结 ; 束。参见第 1篇第 4章第 3 节。(4)RUN 语句标志着 RUN; 一个 DATA 步或 PROC 步的结束, SAS 系统一遇到 它,即开始建立 SAS 数据集或调用过程分析数据。 (5)在程序运行的过程中,我们可以在 LOG 窗口看到这样的信息: NOTE:The data set work.a has 10 observations and 7 variables. 它告诉我们,数据集 A包含 10 个观测和 7个变量。 (6)每个语句以分号为结束。 [EXAMPLE.SAS]显然是一个最基本的 DATA 步程序,这里 DATA 步一共执行了 10 次, _N_ 的值从 1变到 10,但这并非最佳的方法。容易看出,在 10 个观测中,变量 ID 的值正好从 1到 10,每增加一个观测, ID 值增 1。于是我们至少还可以写出 3个 SAS 程序使得 CARDS 语句后的数据流中不含 [EXAMPLE.SAS]中数据的第 1列。 程序二: 程序三: 程序四: DATA a; DATA a; DATA a; DO id=1 TO 10; id+1; id=_N_; INPUT x1-x6; INPUT x1-x6; INPUT x1-x6; OUTPUT; CARDS; CARDS; END; 数据流 数据流 CARDS; ; ; 数据流 RUN; RUN; ; RUN; [程序二说明] ①DO 语句是 SAS 程序中使用频繁的循环控制语句, SAS 规定 DO 语句必须和 END 语句配合使用,DO 和 END 之间的语句构成 1 个 DO 组。本例中, DO 组内的语句被执行 10 次。ID 称为下标变量,如果 ID 值每次递曰是 1,而是别的值, 如 2,则 DO 语句写成: DO ID=1 TO 10 BY 2; DO 组内语句执行 5次。 ②本程序中DATA步只执行了一次,_N_的值始终保持为1, 在循环内部使用了OUTPUT 语句,故共输出 10 个观测,程序中创建的变量一起被输出。 [程序三说明] 累加语句 ID+1 产生这样的效果,DATA 步执行第 1 次时,先对 ID 赋初值 0,然后对 ID 值加 1;DATA 步执行第 2 次时,上次执行结束时保留下来的 ID 值加 1,……,如此往复,也就是说,DATA 步第 1 次执行时 ID=1,第 2 次 ID=2,第 3 次 ID=3,……,这正是我们想要达到的目的。 [程序四说明] 显然,程序三和四中DATA步都执行了10次, 程序四中还充分利 用了_N_的值。以上 4个程序我们都可以加上如下的两条语句: PROC PRINT DATA=A; RUN; 它们调用 SAS 的打印过程,输出数据集 A,都得到下面的结果。 OBS ID X1 X2 X3 X4 X5 X6 OBS ID X1 X2 X3 X4 X5 X6 1 1 14 13 28 14 22 39 6 6 19 14 22 16 23 37 2 2 10 14 15 14 34 35 7 7 20 16 26 21 38 69 3 3 11 12 19 13 24 39 8 8 9 10 14 9 31 46 4 4 7 7 7 9 20 23 9 9 9 8 15 13 14 46 5 5 13 12 24 12 26 38 10 10 9 9 12 10 23 46 (输出结果的第 1部分) (输出结果的第 2部分) [说明] 通过这个简单的例子我们可以看到:正确理解数据步流程, 合理运用 SAS 语句将为我们带来不少方便,使编出来的程序简洁明了。 (二)创建数据集的途径 SAS 数据集中数据的来源大致有以下几种方式: 1、将数据行直接写在CARDS语句后 2、从外部文件(文本文件)读取数据 沿用例 4-1,如果事先将数据输入计算机并做成文本文件, 取名为example.txt, 数据格式和上节中程序二、三、四的相同,那么建立数据集的程序将更加简洁,即: DATA a; INFILE 'example.txt'; id+1; INPUT x1-x6; RUN; [说明] INFILE语句将当前目录下的数据文件EXAMPLE.TXT调入。 INFILE语句 有很多选择项,其中很有用的两项是:LRECL=n定义逻辑记录长度,n的值从 1 至 32767; RECFM=N把整个文件作为一个大记录处理。例如,如果example.txt中的数据 都写在同一行上, 那么上面程序中的第 2 句可改写成:infile 'example.txt' lrecl=200; 或infile 'example.txt' recfm=n; 同时第 4句改写成input x1-x6 @@; (从一行读入多个观测)。 3、利用已经创建的数据集产生所需的新数据集 前面已经创建了数据集A,包含7个变量,如果还想增加1个变量,它的值是x1-x6 之和,可利用已创建的数据集A,重新建立一个数据集,程序如下: DATA b; SET a; ss=SUM(OF x1-x6); RUN; [说明] SET语句告诉SAS系统从1个或几个数据集中读取观测值,SUM是1个SAS 函数,作用是对变量求和,它的一般写法是SUM(X1,X2),即变量间用逗号隔开, 但当 自变量是相继的一些变量时,有如上的简略写法。类似SUM这样的样本统计量函数很 多, 如MAX(最大值)、MEAN(均值)、STD(标准差),这种近乎自然英语的写法为程序的 书写带来了极大的方便,可以说这也是SAS的一大特色。 4、其
本文档为【SAS软件应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_154586
暂无简介~
格式:pdf
大小:373KB
软件:PDF阅读器
页数:43
分类:
上传时间:2012-06-28
浏览量:107