SAS统计分析及应用

上传人:ldj****22 文档编号:48609861 上传时间:2018-07-18 格式:PPT 页数:120 大小:3.16MB
返回 下载 相关 举报
SAS统计分析及应用_第1页
第1页 / 共120页
SAS统计分析及应用_第2页
第2页 / 共120页
SAS统计分析及应用_第3页
第3页 / 共120页
SAS统计分析及应用_第4页
第4页 / 共120页
SAS统计分析及应用_第5页
第5页 / 共120页
点击查看更多>>
资源描述

《SAS统计分析及应用》由会员分享,可在线阅读,更多相关《SAS统计分析及应用(120页珍藏版)》请在金锄头文库上搜索。

1、SAS统计分析 黄玉兰 2010-1-10一、概述SAS系统全称为Statistics Analysis System最早由北卡罗来纳大学的两位生物统计学研究生编制, 并于1976年成立了SAS软件研究所,正式推出了SAS软 件。SAS是用于决策支持的大型集成信息系统,该软件系统最早的功能限于统计分析统计分析功能也仍是它的重要组成部分和核心功能。SAS现在的版本为9.0版,大小约为1G。经过多年的发展 ,SAS已被全世界120多个国家和地区的近三万家机构所采用,直接用户则超过三百万人,在金融、医药 卫生、生产、运输、通讯、政府和教育科研等领域。在英美等国,能熟练使用SAS进行统计分析是许多公司

2、和科研 机构选材的条件之一。在数据处理和统计分析领域,SAS系统被誉为国际上的标准软 件系统,并在9697年度被评选为建立数据库的首选产品。 堪称统计软件界的巨无霸。在以苛刻严格著称于世的美国FDA新药审批程序中,新药试验 结果的统计分析规定只能用SAS进行,其他软件的计算结果 一律无效!哪怕只是简单的均数和标准差也不行!由此可见 SAS的权威地位。SAS系统是一个组合软件系统,它由多个功能模块组 合而成,其基本部分是BASE SAS模块。BASE SAS模块是SAS系统的核心,承担着主要的数 据管理任务,并管理用户使用环境,进行用户语言 的处理,调用其他SAS模块和产品。SAS系统的运行,首

3、先必须启动BASE SAS模块 ,它除了本身所具有数据管理、程序设计及描述统 计计算功能以外,还是SAS系统的中央调度室。它 除可单独存在外,也可与其他产品或模块共同构成 一个完整的系统。各模块的安装及更新都可通过其 安装程序非常方便地进行。SAS系统具有灵活的功能扩展接口和强大的功能模块 ,在BASE SAS的基础上 还可以增加如下不同的模块而增加不同的功能: SAS/STAT(统计分析模块)SAS/GRAPH(绘图模块)SAS/QC(质量控制模块)SAS/ETS(经济计量学和时间序列分析模块)SAS/OR(运筹学模块)SAS/IML(交互式矩阵程序设计语言模块)SAS/FSP(快速数据处理

4、的交互式菜单系统模块)SAS/AF(交互式全屏幕软件应用系统模块)等等。SAS有一个智能型绘图系统,不仅能绘各种统 计图,还能绘出地图。SAS提供多个统计过程,每个过程均含有极丰 富的任选项。用户还可以通过对数据集的一连串加工,实现 更为复杂的统计分析。SAS还提供了各类概率分析函数、分位数函数 、样本统计函数和随机数生成函数,使用户 能方便地实现特殊统计要求。二、安装SAS 洪恩的开天辟地有介绍安装SAS时,应首先将系统时间改到2002年 以前,安装完以后,再crack,然后将时间 修改还原,切记!启动SAS启动后,出现如图 的SAS运行界面,称为“SAS工 作空间(SAS Applicat

5、ion WorkSpace)” 象Windows应用程序一样,在一个主窗口内,包 含若干个子窗口,并有菜单条、工具栏、状态栏 等。 SAS有三个最重要的子窗口: 程序窗口(PROGRAM EDITOR) 运行记录窗口(LOG) 输出窗口(OUTPUT)。 Program Editor的窗口(窗口标签为Editor)就是用来输入SAS语句的,编程操作的所有 内容都是在该窗口内完成的 简单运行样例 假设我们有一个班学生的数学成绩和语文成 绩,数学满分为100,语文满分为120,希望 计算学生的平均分数(按百分制)并按此排 名,可以在程序窗口输入此程序: title 0401班学生成绩排名; dat

6、a c0401; input name $ 1-10 sex $ math chinese; avg = math*0.5 + chinese/120*100*0.5;cards; 李明 男 92 98 张红艺 女 89 106 王思明 男 86 90 张聪 男 98 109 刘颍 女 80 110 ; run; proc print;run; proc sort data=c0401; by descending avg; run; proc print;run; 程序是文本,可在任何文本编辑工具中输入 Windows中的记事本Word也可输入这样包含中文的程序输入后使用复制复制、粘贴命令将

7、输入的程序粘贴 到SAS系统程序窗口。 (即在记事本中复制输入的程序,然后在SAS系统程 序窗口中使用粘贴命令,把程序复制到SAS中)。 运行此程序,只要用鼠标单击工具栏的提交( Submit)图标 ,或用Run菜单下的Submit命令,或 者直接按下F8键(Windows XP)或者F6(Windows 7),就可运行程序。如果选中某一段程序,然后进 行调用,则系统只执行被选中的部分。运行后,输出窗口出现如下:0401班学生成绩排名11:40 Saturday, November 10, 2004Obs name sex math chinese avg1 李明 男 92 98 86.833

8、32 张红艺 女 89 106 88.66673 王思明 男 86 90 80.50004 张聪 男 98 109 94.41675 刘颍 女 80 110 85.8333 运行记录窗口则记录每段程序的运行情况、所用时间 、生成数据保存情况。如果有错误还会用红色指示 错误。 三、SAS程序的使用常识 SAS程序的特点: SAS程序的基本结构SAS程序由语句组成,语句用分号结束。语句一般由特定的关键词开始,语句中可包含变量 名、运算符等,它们以空格分隔。SAS对语句所占的行数无限制,一个语句可占多行 ,同样,多个语句也可占一行。 SAS程序的程序组成SAS程序可以非常复杂其基本结构一般由数个完成

9、单个动作的程序步 和环境设置语句构成。程序步分为两种, 1.数据步(data step),以DATA语句开始,由 若干个语句组成,用来创建和修改用于统计 分析的数据集,一般以RUN语句结束。 2.过程步(proc step),以PROC语句开始。 由若干个语句组成,一般以RUN语句结束。 利用已创建的数据集完成特定的统计分析任 务。libname a d:sysdata; data a.aaaa; input x ; cards; 1 2 3 4 5 ; proc print;var x; run; quit; 第1句就是一个环境设置语句,其作用是设定一个逻辑库,逻 辑库名称为a, 第26句构

10、成数据步,其功能是新建一个数据集,数据集名称 为aaaa,并且输入数据, 第79句构成过程步,其功能是将数据集aaaa中变量x的数值 在output窗口中输出。SAS程序的书写规则与程序注释SAS对程序的书写格式比较灵活,大小写一般不区 分(字符串中要区分大小写),SAS程序与其它编程语言相似,采用缩进格式,使得 源程序结构清楚,容易读懂。SAS程序的程序注释有以下两种格式:注释语句:以星号“*”开始,可占多行,以分号“;”结 束。注释段落:用“/*”和“*/”包括起来的任何字符,可占 多行。程序中要有适当的注释,使程序的可读性强。四、SAS程序的数据步 数据集(dataset)和库SAS数据

11、集(SAS Datasets)由若干行和若干列组成的表格,类似于 一个矩阵,但各列可以取不同的类型值,比 如整数值、浮点值、时间值、字符串、货币 值等等。比如名为C0401的数据集,它的逻 辑形式如下表:NAMESEXMATHCHINES EAVG李明男929886.8333张红艺女8910688.6667王思明男869080.5000张聪男9810994.4167刘颍女8011085.8333表1 数据集的逻辑形式数据集每一行叫做一个观测(Observation)每列叫做一个变量(Variable) SAS数据集等价于关系数据库系统中的一个表 ,实际上一个SAS数据集有时也称作一个表 。在数

12、据库术语中一个观测称作一个记录, 一个变量称作一个域。 在C0401数据集中:有 5个观测,分别代表5个学生的情况,每个学生有5个数据,分别为姓名、性别、数学成绩、语文成绩、平均分此数据集有5个变量, 变量名依次为NAME、SEX、MATH、CHINESE和AVG 数据集要有名字,变量要有名字,SAS中对名 字(数据集名、变量名、数据库名,等等) SAS名字由英文字母、数字、下划线组成, 第一个字符必须是字母或下划线,名字最多 用8个字符,大写字母和小写字母不区分。 比如,name,abc,aBC,x1,year12, _NULL_等是合法的名字,且abc和aBC是同 一个名字class-1(

13、不能有减号)、a bit(不能有空格)、serial#(不 能有特殊字符)、Documents (超长)等不是合法的名字 。 逻辑库SAS系统将所使用的文件以库的形式组织起来,而数据集则存 放在一个库中,这个库就称为逻辑库。libname命令就用于指定库标记。其一般格式为:Libname 库名称 文件夹位置 选项; 例如 libname a d:sysdata; data a.aaaa; input x ; cards; 1 2 3 4 5 ; proc print;var x; run; quit; 第一行就指定d:sysdata为逻辑库位置,其名称为a. 引用在逻辑库中数据集时要使用两级名

14、 称来指定,第一级为库名称,第二级为数据 集名,中间用句点“.”隔开。即用库名称.数据集名 的格式来引用该数据集。仍然是上面的例子,第26句新建一个 数据集,数据集名称为aaaa,就可用a.aaaa来 引用该数据集。 数据步的基本结构 数据步均以DATA语句开始,用于创建和处理数据集 。数据步中常用的语句如下表:表2 数据步的常用语句 语句格式功能DATA语句DATA 数据集名;数据步的开始,同时命名将 要创建的数据集INPUT语句 INPUT 变量名;确定变量的读入格式,即确 定输入的数据所对应 的变 量语句格式功能CARDS或 DATALI NES语 句与数 据块CARDS; 数据块 ;

15、或 DATALINES; 数据块 ;CARDS与DATALINES功能相 同,均用于标志数据块的 开始INFILE语 句INFILE 文件名 选 项;从外部文件中读入数据块OUTPUT语 句将所读入的数据存放在缓存 中,也可用OUTPUT语句 强制输出一条新记录SET语句对数据集中的数据进行编辑 ,也可将指定数据集的内 容复制到新建数据集中 下面是几个例子。 Data语句: Data abc; data work.abc data sasuser.abc; data a.abc; INPUT语句: Input x y z; /*输入变量x,y,z*/ Input x1-x10; /*输入10个变量x1到x10*/ Input x$y; /*输入变量x,y,符号$指明x为 字符变量,表示数据是连续读入*/ 完整例子: libname a d:sysdata;/*设定逻辑库,库名为 a*/ data a.aaaa; /*建立数据集,其名为aaaa*/input x ; /*输入变量x, 表示数据是连 续读入*/cards; /*准备输入数据*/1 2 3 . 5 ; /*输入数据,注意有缺失值(缺失值用单独的小 数点代表)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号