当前位置:文档之家› SAS介绍和SAS数据集

SAS介绍和SAS数据集

SAS系统SAS系统介绍SAS系统是用于数据分析与决策支持的大邓 伟 2013.11 wdeng@型集成式模块化软件包。

其早期的名称Statistical Analysis Software 统计分析软件→大型集成应用系统 商业智能(BI)和分析挖掘(DM)12SAS系统是用于决策支持 的大型集成信息系统SAS系统主要完成以数据为中心的四大任务: 数据访问 数据管理 数据呈现 数据分析SAS历史SAS成立于1976年,是全球最大的私人软件公司(预 打包软件),全球十大独立软件供应商之一 1966年 美国北卡州立大学 Jim Barr and JimGoodnight1972年 推出SAS72供大学使用 1976年 创立公司SAS软件研究所(SAS Institute Inc.) 举办第一个SUGI (SAS Users Group International) 会议 Base SAS 软件上市 与IBM建立合作伙伴关系3 4SAS历史1985 第一个PC DOS SAS System 版本(Base SAS 和SAS/RTERM 软件)取得成功 1986面向个人计算机的SAS/IML 和SAS/STAT 软 件上市 1992决策支持功能扩展到以下领域:指导性数据分析、临床 试验分析和报告、财务电子表格和英语查询 SAS第一个垂直市场软件:制药行业的临床审查系统上 市SAS历史1995 SAS 成为真正的端到端数据仓库解决 方案唯一的供应商,推出Rapid Warehousing Program 1999 美国食品和药品管理局选择SAS开发的 技术,作为接收和归档电子数据的标准561SAS用户业务范围遍布全球131个国家 SAS在全球设有400多个办事处。

SAS在全球拥有800多家合作伙伴。

SAS客户:全球约60,000企业、政府和大学 2011年《财富》500强中的前100名中90家企业 金融、电信、制造、交通、政府、教育机构SAS系统的构成SAS系统是一个可由几个到二、三十个工具模 块及面向行业的子系统组成的可伸缩系统。

其模块按功能大体有四类:数据库及其管理 面向对象的开发平台 各类堪称行业标准的分析工具 方便用户的外层技术(多平台支持,开放环境,网 络计算及分布处理)78SAS 系统介绍The SAS System 数据访问 Base SAS,STAT,ETS, 开 AF OR,QC,IML,INSIGHT, Base SAS发 EIS NNA,LAB, 工 ACCESS FSP SPECTRAVIEW 具 MDDB Server ODBC 数据分析 数据管理 分 Base SAS GRAPH, GIS, CALC, 布 CONNECT 式 INSIGHT, SAS SPECTRAVIEW, 计 Base SHARE FSP IntrNET 算 ASSIST 环 SHARE 境 CONNECT ASSIST 数据呈现 Warehouse Admin. MDDB Server9SAS 系统软件由模块构成数据库部分:BASE SAS, FSP, ACCESS,.. 分析核心:STAT, ETS, QC, OR, IML, . . . 开发呈现工具:AF, EIS, GRAPH, . . . 分布处理与数据仓库:CONNECT, WA, .. 50多种数据源引擎:关系型数据库 层次数据 ODBC 等DATA10Base SAS IT Service Vision OLE DB Providers Open OLAP Server SAS/ACCESS SAS/AF SAS/ASSIST SAS/CONNECT SAS/EIS SAS/ETS SAS/FSP SAS/GIS SAS/GRAPH SAS Data Quality Cleanse SAS/IMLSAS/INSIGHT SAS Integration Technologies SAS/IntrNet SAS/LAB SAS/MDDB Server SAS OLAP Server SAS/OR SAS/QC SAS/SHARE SAS/SPECTRAVIEW SAS/STAT SAS/TOOLKIT SAS/Warehouse Administrator WebHound Software11SAS系统简介SAS窗口和界面安装、启动 界面(显示管理系统DMS):三个基本窗口EDIT 编辑窗:编辑SAS程序 LOG 记录窗:程序运行过程、时间、错误信息 (红色---错误 兰色---正常 绿色--- 警告 ) OUTPUT结果输出窗:当程序运行无误,且有结 果输出时显示 /offices/asiapacific/china/index.html122SAS系统简介-基本窗口命令栏访问和编辑已有的SAS程序 编写新的SAS程序 递交SAS程序 将SAS程序存为文件是一个基本的窗口,缺省地打开 依次记录程序输出的结果 有结果输出时自动转到前台是一个基本的窗口,缺省地打开 依次记录SAS进程中各程序运行的信息 可用命令清空13 14SAS系统简介-基本窗口SAS系统简介SAS窗口和界面Result窗:管理输 出结果 Explore窗:管理SAS系统 中的文件;可以看到并管 理所有的库及SAS 文件常用的其它窗口: KEYS 查看及改变功能键的设置 LIBNAME 查看SAS数据库的逻辑路径 DIR 查看某个SAS数据库的内容 VAR 查看SAS数据集的有关信息 OPTIONS 查看及改变SAS的系统设置1516SAS系统简介SAS窗口和界面其他:var窗、keys窗、lib窗(在命令条command 或命令行command===>输入相应的命令激活)使用Options下拉菜单中的Preferences订制DMS 的显示,如选择“commend bar” 和“commend line” 在命令条/行输入: num on并回车:在编辑窗口加 入行号,方便编程; commend line和行号后的一 列禁止写入,命令或程序需从其后第二列开始写 num并回车 : 关闭行号17SAS系统简介基本运行环境在交互式操作中用命令指挥显示管理系 统、切换窗口和完成各种特定的功能 发布命令有四种方式:在命令框直接键入命令 使用下拉菜单 使用工具栏 按功能键183SAS系统简介基本运行环境SAS系统简介基本运行环境 进入SAS/ASSIST(需购买的模块)发命令ASSIST 下拉菜单 Solutions ⇒ASSISTSAS常用的交互式运行方式:用SAS编程实现各种任务 用SAS提供的菜单系统实现各种任务 用SAS/ASSIST 用SAS桌面系统19进入SAS桌面系统•发命令DESKTOP •下拉菜单 Solutions ⇒ Desktop20SAS系统简介SAS文件系统SAS程序结构:由三部分组成;SAS语句以一个关键词开始, 以分号(;)结束;SAS文件系统 *.sd2 SAS数据集(6.12版)*.sas7bdat SAS数据集(8.0以上版)以字母开头,长度尽量不超过8位SAS 结构 文件*.sas SAS程序文件 *.log log窗口输出 *.lst SAS结果文件文本文件Data esr; /* 数据步:输入并建立数据*/ Input x; Cards; 3 9 8 6 5 5 7 3 10 8 10 4 ; Proc print; /* 过程步:调用现成的SAS过程,进行统计分析*/ Run; /* 在程序最后,指示过程步或数据步结束,可以提交*/21 22基本操作程序运行---在编辑窗输入程序后点击图标 按功能键“F8” 在命令行(窗)键入“submit” 在RUN下拉菜单中选“submit ”基本操作窗口内容保存----激活窗口后在命令行(窗)键入 file “路径\文件名” 点击图标 在file下拉菜单中选“save ”或“save as” 保存为文本文件,可在任何文本编辑软件中编辑 保存的内容:Edit窗:程序,可采用.sas扩展名 Log窗:运行日志,可采用.log/.rft扩展名 Output窗:输出结果,可采用.lst/.rft扩展名SAS窗口中:只有编辑窗口(edit窗)才能打开文件23 244基本操作常用的快捷键F4 recall命令,用于edit窗,将前面提交的程序调 回,可多次使用 F5 切换到edit窗 F6 切换到log窗 F7 切换到output窗 F8 submit命令 Ctrl-E 清除当前窗口的内容。

edit窗被清除的内容 不能用F4调回25SAS 数据集建立邓 伟 2013.0926SAS系统对数据的管理SAS对数据的分析与呈现都是面对SAS数据集 进行的 SAS数据集是一种SAS文件 SAS文件是由SAS系统创建和管理的有特殊结 构的文件。

包括 SAS数据集和SAS目录册 (CATALOG)等27SAS系统对数据的管理数据直接输入流行的数据库其它文件格式SAS数据集 SAS应用程序28SAS系统对数据的管理直接在SAS中输入数据 用SAS数据步将外部数据文件转为SAS数据集 用SAS /ACCESS访问其他数据库管理系统SAS数据集建立 ---用input和cards语句直接输入data child; /*建立临时数据集child.sd2,自动放在saswork子目录下*/ input id x1 $ x2 x3 x4 x5 x6; /* 指明要输入的变量 , $为字符型变量*/cards;/*标志数据区开始,数据之间以一个或几个空格分隔*/1 m 32 95.5 14.0 53.5 49.64 2 m 35 92.0 13.0 52.0 41.61 3 m 33 89.0 12.5 53.5 35.81 254 m 176 168.0 53.5 82.0 100.14 255 f 30 91.0 11.0 48.0 35.39 256 f 33 91.0 11.5 47.0 44.98 521 f 178 163.0 51.0 79.0 87.42 /* 标志数据区结束,分号必须单独一行 */ ;run;29 305SAS数据集建立 ---用input和cards语句直接输入SAS中的变量类型数值型:不需特殊定义 字符型: 定义方式 变量名 $SAS数据集建立data a1; input id x1 cards; 1 m 32 2 m 35 3 m 33 ; proc print; run; 结果:OBS ID X1 1 1 m 2 3 m X2 32 33 X3 95.5 89.0 X4 2.0 12.5$ x2 x3 x4; 95.5 92.0 13.0 89.0 12.5其他类型变量在SAS中:日期型:数值型,实际记录为距1960/01/01的天数 其它数据库中的逻辑型、备注型变量:字符型变量data a1; input id x1 cards; 1 m 32 2 m 35 3 m 33 ; proc print; run; 结果:OBS ID 1 2 3 1 2 3 X1 m m m$ x2 x3; 95.5 92.0 13.0 89.0 12.5输入输出格式:可定义;存储和显示可以不一 样31X2 32 35 33X3 95.5 92.0 89.032SAS数据集建立不分行符@@的使用data esr; input x @@; /*每读入一天记录后,数据指针保持原位不换行, 继续读下一条记录*/ cards; 3 9 8 6 5 5 7 3 10 8 10 4 ; proc means; run;SAS数据集建立缺失值的输入--- 以 . 表示,缺失值不进入分析data child; input id x1 $ x2 x3 x4 x5 x6; cards; 1 m 32 95.5 14.0 53.5 2 m 35 . 13.0 52.0 3 m 33 89.0 12.5 53.5 254 m 176 168.0 53.5 82.0 255 f 30 91.0 11.0 48.0 256 f 33 91.0 11.5 47.0 521 f 178 163.0 51.0 79.0 ; proc means; run;结果:Analysis Variable : X N Mean Std Dev Minimum Maximum ---------------------------------------------------------12 6.5000000 2.5405797 3.0000000 10.0000000 ----------------------------------------------------------49.64 41.61 35.81 100.14 35.39 44.98 87.423334SAS数据集建立结果Variable N Mean Std Dev Minimum Maximum -------------------------------------------------------------ID 7 184.5714286 194.9639771 1.0000000 521.0000000 X2 7 73.8571429 70.4779601 30.0000000 178.0000000 X3 6 116.2500000 38.2410120 89.0000000 168.0000000 X4 7 23.7857143 19.4825930 11.0000000 53.5000000 X5 7 59.2857143 14.7361719 47.0000000 82.0000000 X6 7 56.4271429 26.2540446 35.3900000 100.1400000 --------------------------------------------------------------SAS数据集建立日期输入、输出格式例:输入数据 20OCT97 20/10/97 1997/10/20 输出数据 20OCT1997 102097 97-10-2035输入格式DATE8. DDMMYY9.(或10.) yymmdd11. 输出格式 date9. mmddyy6. yymmdd8.1960,1,1⇒0 1960,1,2⇒1 1960,2,1⇒31 1961,1,1⇒366实际存储 数据值 13807366SAS数据集建立例: data aa; input x date Date8.; cards; 1 11OCT01 2 12OCT01 ; proc print; format date yymmdd10.; run; 输出: Obs x date 1 1 2001-10-11 2 2 2001-10-12SAS数据集建立 ---从其他数据集转入利用file下拉菜单中的import功能 ,可转入:文本型数据:空格分隔(delimited file)、逗号分 隔(comma separated values,.csv)、制表键 分隔(tab delimited file) Excel数据库纯数据可通过粘贴的方法贴到edit窗后,加入input 和cards等语句,生成sas数据集3738SAS数据集建立 ---从其他数据集转入Epi Data的数据可在Epi Data中用export模块 转成*.sas文件(SAS的程序文件),在edit窗 打开后,加上run;语句后提交运行即可。

相关主题