第一、二章 SAS系统简介 SAS数据库与数据集_第1页
第一、二章 SAS系统简介 SAS数据库与数据集_第2页
第一、二章 SAS系统简介 SAS数据库与数据集_第3页
第一、二章 SAS系统简介 SAS数据库与数据集_第4页
第一、二章 SAS系统简介 SAS数据库与数据集_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、统计软件包统计软件包SAS系统与统计分析系统与统计分析http:/ SAS网站http:/ SAS中文网站http:/ SASOR爱好者网站:http:/ /bbs/ 人大经济论坛http:/ 中国统计网 SASSAS-Statistics Analysis System -Statistics Analysis System (统计分析系统)第一章第一章 SAS系统简介系统简介 最早由北卡罗来纳大学的两位生物统计学研究生最早由北卡罗来纳大学的两位生物统计学研究生编制编制并于并于19761976年成立了年成立了SASSAS软件研究所,正式推出了软件研究所

2、,正式推出了SASSAS软件软件 在数据挖掘技术、商业智能领域和统计分析领域中几在数据挖掘技术、商业智能领域和统计分析领域中几乎乎处于垄断地位处于垄断地位 SASSAS用户遍及医药、金融、商务、电讯、环境、交通、用户遍及医药、金融、商务、电讯、环境、交通、能源、科研、企业管理、统计等众多行业。能源、科研、企业管理、统计等众多行业。 被誉为国际上的被誉为国际上的标准软件标准软件,也是国际上最流行的标准,也是国际上最流行的标准企业管理软件。企业管理软件。. SASSAS是集是集数据访问、数据管理、数据分析和报告数据访问、数据管理、数据分析和报告为一体为一体的大型应用软件系统。的大型应用软件系统。

3、该软件系统最早的功能限于统计分析该软件系统最早的功能限于统计分析 SASSAS是一种集成软件,由几十个模块组成,用户可以根据实际是一种集成软件,由几十个模块组成,用户可以根据实际应用调用不同模块或模块组合进行工作应用调用不同模块或模块组合进行工作. . 至今,至今,统计分析统计分析功能也仍是它的重要组成部分和功能也仍是它的重要组成部分和核心功能核心功能. . 此外,还有此外,还有SAS/ETS(SAS/ETS(预测预测) )、SAS/IML(SAS/IML(矩阵运算矩阵运算) )和和SAS/QCSAS/QC( (质量控制质量控制) )等约等约2020个模块。个模块。统计分析功能是由统计分析功能

4、是由 SAS/BASESAS/BASE(基础),(基础),SAS/STATSAS/STAT(统计),(统计),SAS/GRAPHSAS/GRAPH(图形)(图形)等模块实现的。等模块实现的。这些模块可单独使用、也可互相配合起来使用。这些模块可单独使用、也可互相配合起来使用。 每个每个SASSAS模块都由多个可执行的文件组成模块都由多个可执行的文件组成, ,它它们被称为们被称为SASSAS过程过程(SAS PROCEDURE),(SAS PROCEDURE), 用户在调用用户在调用SASSAS过程解决具体问题之前过程解决具体问题之前, ,必须用必须用SASSAS语言编写一段语言编写一段SASSA

5、S程序程序(SAS PROGRAM(SAS PROGRAM)。 应用应用SASSAS的的关键就是要编写出符合各种情况的关键就是要编写出符合各种情况的SASSAS程序。程序。 SAS包含的模块及各模块功能简单介绍包含的模块及各模块功能简单介绍 BASE SAS(基础模块基础模块) SAS系统的核心可单独使用,也可和其系统的核心可单独使用,也可和其他模块结合使用他模块结合使用 功能:功能:可用于数据管理,基础统计计算,可用于数据管理,基础统计计算,报表生成和图形显示报表生成和图形显示。 SAS/STAT(统计分析模块统计分析模块) 功能:功能:可作全面性的高级统计分析和应用可作全面性的高级统计分析

6、和应用 包括方差分析,回归分析,属性数据分析,包括方差分析,回归分析,属性数据分析,多元分析,生存分析,聚类分析,判别分析,多元分析,生存分析,聚类分析,判别分析,及非参数分析等。及非参数分析等。 SAS/ETS(经济计量学和时间序列分析模块经济计量学和时间序列分析模块 ) 功能:功能:用于时间序列分析和预测,建立经用于时间序列分析和预测,建立经济系统模型,财务分析和撰写报告。济系统模型,财务分析和撰写报告。 是研究复杂系统和进行预测的有力工具。是研究复杂系统和进行预测的有力工具。 SAS/GRAPH(绘图模块)(绘图模块) 功能:功能:绘制二维或三维高分辨彩色图形。绘制二维或三维高分辨彩色图

7、形。 可绘制柱形图,饼形图,星形图,散点图,可绘制柱形图,饼形图,星形图,散点图,等高线图和地图。等高线图和地图。 SAS/ASSIST(面向任务的菜单驱动界面模块)面向任务的菜单驱动界面模块) 功能:功能:为为SAS系统提供面向任务的菜单驱动界面,系统提供面向任务的菜单驱动界面,可免去用户学习可免去用户学习SAS语言的负担。语言的负担。 同时同时SAS/ASSIST生成的生成的SAS程序程序即可辅助有经即可辅助有经验的用户快速编写验的用户快速编写SAS程序,又可帮助新用户学程序,又可帮助新用户学习习SAS语言。语言。 SAS/QC(质量管理模块)(质量管理模块) 功能:功能:可进行生产过程分

8、析,试验设计,包括可进行生产过程分析,试验设计,包括二阶因子分析,正交分析和矩阵试验。二阶因子分析,正交分析和矩阵试验。 SAS/OR(运筹学模块)运筹学模块) 功能:功能:用于运筹学和工程管理的专用软件,用于运筹学和工程管理的专用软件,提供全面的运筹学方法,是一种强有力的决策提供全面的运筹学方法,是一种强有力的决策支持工具。支持工具。 SAS/IML (交互式矩阵程序设计语言模块)(交互式矩阵程序设计语言模块) 功能:功能:是用户研究新算法或解决是用户研究新算法或解决SAS系统中系统中没有现成方法的工具。没有现成方法的工具。 此外,此外,SAS系统中还包括的模块有系统中还包括的模块有SAS/

9、FSP ,SAS/ACESS,SAS/EIS,SAS/INSIGHT, SAS/LAB, SAS/SHAPE, SAS/CONNECT, SAS/CAKC,SAS/GIS, SAS/NVISION, SAS/SPECTRAVIEW, SAS/TOOLKIT等等。等等。 软件特点软件特点: 灵活方便,功能齐全。灵活方便,功能齐全。 SAS语言是程序设计语言,类似于语言是程序设计语言,类似于C语言,有大语言,有大量的标准函数和编程语言用于数据处理。量的标准函数和编程语言用于数据处理。 应用面广,例如:统计学、心理学、经济学、生应用面广,例如:统计学、心理学、经济学、生物学、商业、金融、社会调查等。

10、物学、商业、金融、社会调查等。SAS系统的启动与关闭 SAS系统的各个窗口 程序编辑窗口 (PROGRAM EDIT) 程序运行日志窗口(LOG) 程序输出窗口 (OUTPUT) 图形编辑窗口 (GRAPHICS) 资源管理器 (ExplorerExplorer) 输出结果 (ResultsResults) SAS系统的启动 SAS系统的退出SASSAS的窗口功能应用的窗口功能应用Editor Editor 窗口窗口 : : 可以使用一个或者多个 Editor 窗口来进行输入、编辑和提交 SAS 程序。 Editor 窗口提供了大量的编辑功能. LOGLOG窗口窗口: : 用于监视SAS 会话

11、及程序的执行过程,提示程序运行过程中的各种信息.OUTPUTOUTPUT窗口窗口: : 用于显示和浏览所提交的 SAS 程序的输出结果。 在默认情况下,Output 窗口是藏在 Editor 和 Log 窗口后面的,一旦你产生了输出,Output 窗口将自动显示到前端。 Explorer Explorer 窗口窗口: : 可以查看和管理你的 SAS 文件,并为非 SAS 文件创建快捷方式、使用窗口来创建新的数据库和 SAS文件、打开任何 SAS 文件以及完成大部分的文件管理工作。Results Results 窗口窗口 : : Results 窗口能帮助操作和管理所提交的 SAS 程序的输出结

12、果。 默认情况下,Results 窗口藏在 Explorer 窗口的后面并且是空的,直到你提交了产生输出的 SAS 程序,它才会显示到前端SAS实例 datadata c1; input name$ sex$ age; cards; zhao m 44 zhoupin f 29 cheng f 32 ; procproc printprint; RunRun;第二章第二章SASSAS数据库与数据库与SASSAS数据集数据集(1)SAS (1)SAS 数据库分类数据库分类 SAS数据集(表)存储在被称为SAS数据库的文件夹中, 根据存储方式的不同,分为永久库和临时库永久库和临时库。 每一个数据集

13、都有一个两级名,第一级是库标记,第二级是数据集名,中间用“.”隔开; 库标记.数据集名 如work.example sasuser.cjlSAS数据库数据库临时库临时库: 临时库只有个,名为WORK. 它在每次启动SAS系统后自动生成,关闭SAS临时库中的数据集被自动删除 。 在程序中引用该库中的数据集可以省略库标记,即它被认为是缺省的数据库。 (2)(2)创建一个新库标记创建一个新库标记 利用利用资源管理器资源管理器( (Libraries)Libraries)窗口命名;窗口命名; 使用使用LibnameLibname语句命名语句命名。 永久库永久库:(1 1)永久库可有多个,且库中的数据集

14、被保存)永久库可有多个,且库中的数据集被保存起来,以便下次启动系统时使用。起来,以便下次启动系统时使用。(2 2)SASUSER , SashelpSASUSER , Sashelp是是SASSAS自带的永久库,自带的永久库,每次启动时都会自动指定此库标记。每次启动时都会自动指定此库标记。u(1 1)利用资源管理器窗口)利用资源管理器窗口 在在 资源管理器资源管理器窗口中,双击逻辑库图标;窗口中,双击逻辑库图标; 空白处点击右键空白处点击右键 新建;新建; 在在新建逻辑库新建逻辑库窗口中,输入库名称窗口中,输入库名称cjlcjl,选择,选择 启启动时启用动时启用,以便每次启动,以便每次启动 S

15、AS SAS 系统的时候数据库系统的时候数据库能被自动创建好能被自动创建好. . 选择对应于这个数据库的目录选择对应于这个数据库的目录 点击确定即可创建好库标记点击确定即可创建好库标记. cjl. cjl出现在当前数据出现在当前数据库列表中。库列表中。 如如:建立一个永久库名为建立一个永久库名为cjl的数据库的数据库(2 2)在)在EditorEditor窗口用窗口用LibnameLibname语句创建语句创建 可用Libname语句指定永久库的库标记,格式: Libname 库标记文件夹位置; 如:指定“E:CJLsasdata”为库标记a,可提交下列语句: libnanme a E: CJ

16、Lsasdata; 库标记是临时的,可随意指定,每次启动库标记是临时的,可随意指定,每次启动SASSAS系系统后都要重新指定统后都要重新指定 。SAS数据库libname stat d:study;data stat.student;input name$ age;cards;Mike 23Alice 21;run;SASSAS数据集数据集SAS数据集的基本概念数据集的基本概念SAS数据集的构成 描述部分 数据部分SAS数据集的类型 永久性数据集 临时性数据集 SAS数据集的创建数据集的创建 用用VIEWTABLE(表编辑器)创建数据集(表编辑器)创建数据集 单击数据库名称在数据库中单击鼠标右

17、键在菜单中选择新建新建选择表,表,即进入VIEWTABLE窗口; 为了输入表内变量的名称和属性,在变量名称A上单击鼠标右键选择COLUMN ATTRIBUTES 选择GENERAL输入相应内容单击APPLY在表格中输入数据注注:NAME:最长不超过32个字符 LABEL:变量的标签,最长不超过256个字符 LENGTH:规定变量的数据的长度,默认为8 FORMAT:修改数据的存储格式 INFORMAT:修改数据的输入格式 TYPE:选择变量是数值型(NUMERIC)还是字符型(CHARACTER)用用SAS/INSIGHT软件创建软件创建SAS数据集(略)数据集(略)注意:输入数据时要用TAB

18、键和上、下、左、右键,不能用鼠标来选择单元格。 利用利用SAS/ACCESS软件访问其他的数据文软件访问其他的数据文件件利用FILEIMPORT,来导入数据data test;input name$ age weight height;wei1=weight+height;Cards;Tom 10 40 165Mike 11 42 160Jack 10 46 162Lucy 10 39 155Kate 11 37 155;Run; 编辑程序导入数据:编辑程序导入数据: 缺失的数据用.来表示; 字符型数据的长度不能超过8个字符; 变量名与数据值要对应。注意:注意:下面来详细说明下面来详细说明SA

19、S的的DATA步步利用利用DATA步从原始数据创建步从原始数据创建SAS数据集数据集data sasuser.da1;input name$ x1 x2 x3;y=x1+x2=x3;cards;M 3 1.3 0.5M 2 2.4 0.9F 5 3.2 0.8M 8 4.1 1.1F 7 3.3 0.6;run;DATA步的一般形式步的一般形式data 语句;语句;input 语句;语句;(用于data步的其他语句);cards语句;datalines(数据行);run; data 步的开始,可以定义要产生的sas数据集的名称。可以定义数据集为永久数据集或临时数据集。分别为:data sasu

20、ser.da1;data work.da1;(data da1;)data 语句语句data步后面可以同时定义多个数据集步后面可以同时定义多个数据集yearproductsale2003computer20002003mp314002004computer14002004mp313002005computer16002005mp32200data year03 year04 year05;input year production$ sale;if year=2003 then output year03;else if year=2004 then output year04;else if

21、 year=2005 then output year05;cards;2003 computer 20002003 mp3 14002004 computer 1 4002004 mp3 13002005 computer 16002005 mp3 2200;把每一年的资料构成一个数据集把每一年的资料构成一个数据集data com mp3;input year production$ sale;if production=computer then output com;else output mp3;cards;2003 computer 20002003 mp3 14002004 com

22、puter 1 4002004 mp3 13002005 computer 16002005 mp3 2200;按产品分类分别构成一个数据集按产品分类分别构成一个数据集创建几个包含不同变量组的子集创建几个包含不同变量组的子集data one (keep=year) two(drop=year sale);input year production$ sale;cards;cards;2003 computer 20002003 mp3 14002004 computer 1 4002004 mp3 13002005 computer 16002005 mp3 2200;input语句语句 描述

23、输入的数据,对每个变量给出名字、描述输入的数据,对每个变量给出名字、类型及格式类型及格式; 数据类型有字符型和数值型,用数据类型有字符型和数值型,用$加以区别加以区别; 数据输入格式有数据输入格式有: 列表方式或自由格式列表方式或自由格式 列方式列方式 格式化方式格式化方式 命名方式命名方式列表方式或自由格式:列表方式或自由格式:input name $ age;data ab;input a $ b ;cards;ww33 3 yyyy 322 ;run;列方式:列方式:(指明变量的值所属的列号)input name $ 1-8 age 11-12;输出结果Obs a b 1 ww33 32

24、 yyyy 322 data ab;input a $ 1-4 b 7-9;cards;ww33223yyyy2332234;run;(输入数据时不用空格分开(输入数据时不用空格分开)输出结果Obs a b 1 ww332 0.232 yyyy2 3.32 格式化方式格式化方式: (指明变量的数据类型和区域宽度)input input a $ 5. b 3.2;data ab;input a $ 5. b 3.2;cards;ww33223yyyy2332234;run;命名方式命名方式: (SAS在输入的数据中寻找变量名和等号)input name= $ age=;data da1;Inpu

25、t id name=$ age=;Cards;200012 name=marry age=15200015 age=16 name=join200011 age=16 name=smith;输出结果输出结果Obs id name age1 200012 marry 152 200015 join 163 200011 smith 16 上述输入法在input语句中可以混用; 数据行中的数据顺序必须与input语句中变量定义的顺序一致; 一行中输入几个观测,需在input语句结尾处加; 若输入变量连续,如x1,x2,x10,可简写为x1-x10.data three;input name $ x

26、1-x3 ;cards;John 68 87 78 Mary 63 74 95 Kate 59 73 91;输出结果输出结果Obs name x1 x2 x3 1 John 68 87 78 2 Mary 63 74 953 Kate 59 73 91 DATA步中的其它语句步中的其它语句对输入的数据进行加工。 CARDS(DATALINES)语句语句后紧接数据行,标志着语句的结束及DATA步中数据行的开始。注:注:数据行每行结尾不需要加“;”,数据输入完后另起一行再加“;”,表示数据输入完毕。由外部数据集转换为由外部数据集转换为SAS数据集数据集data data-set-name;infi

27、le filename options;input variables($) startcolendcol;(用于data步的其他语句);run;注:注:由其他格式的文件转换为SAS数据集不需要用CARDS语句,但需要INFILE语句,并且要放在INPUT语句前面,结尾要用结尾要用RUN结束。假设在D盘下存在数据文件test.txt:结构为 123.5 2.108 141.5 301.8 146.1 9.213 168.9 396.1 133.9 1.905 154.8 328.2 128.5 0.815 146.5 307.4 151.5 1.061 172.8 362.4 136.2 8.

28、603 160.1 369.5 92.0 1.125 108.5 229.1则将其转化为一个临时性的SAS数据集: data da1; infile d:test.txt; input x1-x4; sum=x1+x2+x3+x4; (此行根据条件可以不要) run; proc print data=da1; run;通过已有的通过已有的SAS数据集创建数据集创建新的新的SAS数据集数据集一般形式为:data new data-set-name;set old data-set-name (options);其他sas语句;run; options: keep= 和drop=用来控制哪些数据被

29、写入到新的数据集中用来控制哪些数据被写入到新的数据集中几个常用的几个常用的SAS过程过程 Print 打印过程打印过程 Sort排序过程排序过程 Transpose转置过程转置过程Print打印过程打印过程功能:功能:用于输出用于输出SAS数据集中的数值数据集中的数值一般格式为一般格式为:proc print (option-list);var variable-list;id variable-list;by variable-list;pageby by-variable;sumby by-variable;sum variable-list;语句说明语句说明1、proc print 语句

30、语句选项选项:(1)data=SAS数据集数据集 指定要打印输出的数据集指定要打印输出的数据集(2)N 输出观测个数输出观测个数(3)Double|D 隔行打印隔行打印(4)Round|R 四舍五入四舍五入(5)Noobs 不输出观测数据的序号不输出观测数据的序号2、by 语句语句 分别输出有分别输出有by变量定义的观测组的数据变量定义的观测组的数据 列表列表. 必须先按必须先按by组排序。组排序。3、pageby 语句语句 按按by组分页输出,必须和组分页输出,必须和by语句一语句一 起应用。起应用。4、sumby 语句语句 按按by组分别求和。组分别求和。data sample2;inpu

31、t x y z ;cards;1 1 1 1 2 3 1 7 8 9 5 4 3 4 2 45 5 6 6 7 1 4 3 5 6 2;proc sort data=sample2; by x; (必须先排序)proc print data=samples; by x; pageby x; sum y z; run;SORT排序过程排序过程proc sort (option-list);by (descending) variable1 (descending) variablen;by语句后的变量,先按第一个变量排序,然后再排第二个变量.,若没有descending则按升序排。TRANSPO

32、SE过程过程主要功能:主要功能:把原把原SAS数据集转置为一个新的数据集转置为一个新的SAS数据集,原数数据集,原数据集中的观测变为变量,变量变为观测。据集中的观测变为变量,变量变为观测。新数据集中的变量包含一下三类:新数据集中的变量包含一下三类:1)从输入数据集中拷贝过来的变量;从输入数据集中拷贝过来的变量;2)由输入数据集中的观测转置后所创建的变量;)由输入数据集中的观测转置后所创建的变量;3)为了识别在输出数据集的每个观测值的来源而)为了识别在输出数据集的每个观测值的来源而创建的变量。创建的变量。data three;input name $ sex $ x1-x3 ;cards;Joh

33、n m 68 87 78 Mary f 63 74 95 Kate m 59 73 91;Proc transposedata=tree out=trans;proc print data=trans1;Run;Transpose过程在输出数据集创建四个变量:过程在输出数据集创建四个变量:(1) _NAME_ 输入数据集中的观测转置后所创建的变量,输入数据集中的观测转置后所创建的变量,称为转置变量。其观测值为原数据集中三个数值型变量。称为转置变量。其观测值为原数据集中三个数值型变量。(2) COL1、COL2、COL3 为识别输出数据集中每个观测为识别输出数据集中每个观测值的来源而创建的变量,

34、值的来源而创建的变量,原数据集 Obs name sex x1 x2 x3 1 John m 68 87 78 2 Mary f 63 74 95 3 Kate m 59 73 91输出结果: Obs _NAME_ COL1 COL2 COL3 1 x1 68 63 59 2 x2 87 74 73 3 x3 78 95 91语句说明:语句说明:1、 proc transpose (option-list);规定对给定的规定对给定的数据集进行转置。数据集进行转置。proc transpose (option-list);var variable-list;id variable-list;copy variable-list;by variable-list;TRANSPOSE语句一般格式语句一般格式常用选项常用选项(option-list):Prefix=name 规定一个词头来构造新变量的名字,省略,新变量名为COL1,COL2,COLn。Data=SAS-d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论