一SAS 基础.docx

上传人:b****6 文档编号:12407135 上传时间:2023-06-05 格式:DOCX 页数:14 大小:27.84KB
下载 相关 举报
一SAS 基础.docx_第1页
第1页 / 共14页
一SAS 基础.docx_第2页
第2页 / 共14页
一SAS 基础.docx_第3页
第3页 / 共14页
一SAS 基础.docx_第4页
第4页 / 共14页
一SAS 基础.docx_第5页
第5页 / 共14页
一SAS 基础.docx_第6页
第6页 / 共14页
一SAS 基础.docx_第7页
第7页 / 共14页
一SAS 基础.docx_第8页
第8页 / 共14页
一SAS 基础.docx_第9页
第9页 / 共14页
一SAS 基础.docx_第10页
第10页 / 共14页
一SAS 基础.docx_第11页
第11页 / 共14页
一SAS 基础.docx_第12页
第12页 / 共14页
一SAS 基础.docx_第13页
第13页 / 共14页
一SAS 基础.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

一SAS 基础.docx

《一SAS 基础.docx》由会员分享,可在线阅读,更多相关《一SAS 基础.docx(14页珍藏版)》请在冰点文库上搜索。

一SAS 基础.docx

一SAS基础

一、SAS基础

本课主要内容;

1.SAS的启动

2.SAS语言

3.SAS语句

4.SAS程序的基本组成与规则

5.SAS数据集

6.SAS数据库

7.SAS表达式

8.SAS视窗概述

SAS的全称为统计分析系统(StatisticalAnalysisSystemSAS),是当今国际上最著名的数据分析软件之一。

20世纪60年代末由美国北卡罗来纳州州立大学的几位教授开始研发,1975年创建美国SAS研究所。

之后,推出的SAS系统,经过30多年的不断发展与完善,目前已成为大型集成应用软件系统,是当前国际上较为流行、并且具有权威性的统计分析软件之一。

广泛应用于金融、医药卫生、通信和教育科研等领域,完成统计、图表分析、时间序列分析等工作。

SAS是一个庞大的系统,它由许多模块组成,每个SAS模块都是由很多可执行的文件组成,它们被称之为SAS过程(SASPROCEDURE)。

我们在调用SAS过程解决具体问题时,通常需要用SAS语言编写一段程序,通过它建立起我们与SAS系统之间的联系,我们称之为SAS程序(SASPROGRAM)。

应用SAS的关键就是要写出满足各种统计要求的SAS程序,编写程序的前提条件是我们要对SAS语言有较详细的了解,这一点对初学者来说有一定困难。

虽然,近年来随着图形界面、用户友好等程序思想的发展,在视窗版本的SAS中也逐渐提供了一些不需要编程就能进行数据管理、分析和绘图等功能,但是,SAS的编程方法在实际应用的过程中仍然是非常重要的。

许多学习SAS的人员通过自己的实践总结出一条经验,即“了解一些重要的基本概念,掌握一些重要语句的命令格式,使用和修改相关SAS书中或前人已写好的SAS程序,使其成为适合分析现有数据资料的新程序。

”这样可以使SAS的应用化繁为简、事半功倍。

 

一、启动SAS

在Windows环境中,从开始菜单的程序文件夹中找到SAS系统文件夹,从中启动SAS系统。

或者将SAS.EXE的快捷方式放到桌面上,然后双击SAS.EXE启动。

二、SAS语言:

SAS系统强大的数据管理能力、计算能力、分析能力依赖于作为基础的SAS语言。

SAS语言是一个专用的数据管理与分析语言,它的数据管理功能类似于数据库语言(如FoxPro),但又添加了一般高级程序设计语言的许多成分,以及专用于数据管理、统计计算的函数。

SAS系统的数据管理、报表、图形、统计分析等功能都可以用SAS语言程序来调用,只要使用者指定要完成的任务就可以由SAS系统按照预先设计好的程序去进行。

本次课主要介绍SAS的一些基本概念、语言的组成、编写程序的规则、SAS视窗等,了解SAS语言是如何管理数据以及SAS过程使用的初步知识。

三、SAS语句

SAS语言的基本单位是语句,每个SAS语句一般由一个关键字开头(如DATA,PROCprocedure,INPUT,CARDS,BY),以分号(;)结束。

SAS关键字是用于SAS语句开始的特殊单词,SAS语句除了赋值、累加、注释、空语句以外都是以关键字开头。

SAS关键字不区分大小写。

SAS语句的名称是以关键字命名的。

※四、SAS程序的基本组成与规则:

SAS程序包括数据步和过程步两部分,每一个步骤是一段相对完整的可以单独运行的程序。

数据步用来生成、整理数据和进行自编程计算,过程步是调用SAS已编好的处理过程对数据进行处理。

例1.1

dataaa;

inputsbpweight;

cards;

132146DATA步(数据步)

142178

128168

;

run;

procreg;

modelsbp=weight;PROC步(过程步)

run;

※数据步(DATA步):

data数据集名;

run;

数据步以DATA语句开头,以RUN语句或另一个数据步/过程步结束。

其作用是:

①标志数据步的开始;②命名将要建立的SAS数据集(自定义数据集名称或系统默认)。

完成变量的设定、数据的输入、整理、转换、计算和数据输出等各种数据处理功能。

具体地说,就是建立起变量与数据之间的联系,是进一步分析的前提。

如上例程序中DATA步提交后,SAS系统就会创建一个名为aa的SAS数据集,该数据集内包含两个变量,每个变量有三个观察数值。

数据步中常用的语句:

(…)

data语句:

指定要创建的SAS数据集

input语句:

用于指定输入的变量名、变量数目和格式

cards语句:

在cards语句和一个分号(;)(单独一行)之间输入数据块

infile语句:

用于从外部调用一个文本格式文件(纯文本)的数据(不常用)

libname语句:

用于指定一个永久逻辑库(只用于数据步)

过程步(PROC步):

proc过程名选项(可有可无);

过程语句选项;

run;

以PROC语句开头,后面紧跟程序步名(多数是与其功能相对应的英文单词或词组,例如PROCprint;PROCmeans),以RUN语句结尾,当程序中有多个过程步时,中间的RUN结尾语句可以省略,因为下一个过程步或数据步出现后,当前的步骤就自动结束,但程序的最后RUN语句不能省略。

(数据步亦然)

过程步的作用:

是激活SAS过程,调用过程库中已编好的用于数据整理和统计分析的计算机程序。

结合上例程序PROC提交后,SAS系统将从过程库中调出REG过程,并对新建立的SAS数据集aa中的变量作线性回归分析,并输出分析结果。

常用的过程语句:

var语句:

在过程中用来指定分析变量。

(数值型)

Model语句:

在一些统计建模过程中用来指定模型的形式。

一般形式为:

model因变量=自变量/选项(即用自变量预测因变量)

By和class语句:

by语句在过程中一般用来指定一个或几个分组变量(预先排序),根据分组变量把观测分组。

如:

procprintdata=aa;bysex;即按照性别分组后输出数据到窗口。

class语句,如方差分析中,用来指定一个或几个分类变量,把观测按分类变量分类后分别进行分析,使用class时不需要预先按分类变量排序。

最简单的SAS程序就是由一个数据步和一个过程步组成,但通常,一个SAS程序中可以包含多个SAS数据步和多个过程步。

规则:

SAS程序由语句构成。

每个语句以分号结尾(最常见的SAS编程错误就是丢失分号)。

因为分号作为语句结束标志,所以SAS语句不需要单独占一行(但初学时为了清楚程序的运行过程,希望以一句一行的形式书写程序),一个语句可以写到多行(不需任何续行标志),也可以在一行连续写几个语句。

例1.2

procprint

data=c9501;

byavg;

run;

procprintdata=c9501;byavg;run;

是等效的。

在SAS程序中可以加入注释,注释使用C语言语法,用/*和*/符号在两端界定注释文字,这种注释可以出现在任何允许加入空格的程序书写位置,可以占多行。

我们一般只把注释单独占一行或若干行,不把注释与程序代码放在同一行。

注释的另一个作用是把某些程序代码暂时屏蔽使其不能运行。

下面是一个注释的例子:

/*生成95级1班考试成绩的数据集*/

datac9501;

五、SAS数据集(打开才能看到即只在SAS环境下读)

SAS数据集(SASDatasets)是各种特殊格式的SAS文件中最重要的一种。

它的结构可以看作是由若干行和若干列组成(二维表)的一个表格,与很多数据库软件(如dBase、Foxpro等)生成的关系型数据库结构相同。

例如生成一个名为C9901的数据集,它的逻辑形式如下表:

CODE

NAME

SEX

MATH

CHINESE

AVG

1

李明

92

98

86.8333

2

张红艺

89

106

88.6667

3

王思明

86

90

80.5000

4

张聪

98

109

94.4167

5

刘颍

80

110

85.8333

数据集的组成:

1.变量/字段(Variablevar):

相同特性的数据值的集合用变量来标志,即表中每一列都是一个变量,通常是需要给变量赋予名称。

变量是有属性的。

变量的类型有两种:

字符型变量——以ASCII码存放,值的最大长度不超过200个字符;

数值型变量——以浮点数存放,长度为8个字符。

2.观测值(Observationobs):

上表中的每一行组成一个观测值(观察对象),一个观测值也可叫作一条记录。

3.数据值:

SAS数据集中每一个元素就是一个数据值,即行和列的交叉点,如name变量下第1行,数据值是李明,math变量下第1行数据值是92等。

了解在SAS/INSIGHT模块中为了区分变量在分析中的不同作用,变量又分为区间型变量(interval)和名义变量(nominal)。

区间型变量必须是数值型变量,可以对其观测值进行运算、计算各种统计量。

名义型变量可以是数值型的(以数值分类也可看成名义的),也可以是字符型的。

在变量类型缺省的情况下,Insight模块对所有数值型变量冠以区间型,对所有字符型变量冠以名义型。

上例数据集中有5个观察单位,代表5个学生的情况,每个学生有6个变量。

从上面例子可以看出,数据集要有名字,变量要有名字,所以SAS中对名字(数据集名、变量名、数据库名,等等)有约定:

SAS名字由英文字母、数字、下划线组成,第一个字符必须是字母或下划线,大写字母和小写字母不区分。

比如,name,abc,aBC,x1,year12,_NULL_等是合法的名字,且abc和aBC是同一个名字(同名覆盖);而class-1(不能有减号)、abit(不能有空格)、serial#(不能有特殊字符)、Documents(超长)等不是合法的名字。

原则:

简单、明确。

六、SAS数据库(位置,即一个文件夹)临时库一个,永久库若干个

SAS系统有三个预定义的数据库:

WORK、SASUSER、SASHELP。

其中,WORK数据库叫做临时库,存放在其中的SAS文件叫临时文件,这些临时文件当退出SAS系统时会被自动删除。

SASUSER库可以保存与用户个人设置有关的文件,它是永久库,退出SAS时文件不会删除。

SASHELP库保存与SAS帮助系统、例子有关的文件(只读文件),是永久的。

除此之外,用户也可以自定义永久库,指定一个在磁盘上已存在的文件夹1作为SAS的永久库,我们只需要为这个库起一个逻辑库名2(即永久库的符号),在SAS工作中使用该逻辑库名来代表永久库,其位置即已经存在的文件夹。

逻辑库名一旦指定,在本次SAS工作中都有效,如果退出SAS后再次进入时逻辑库名要重新定义。

永久库可以建立多个,以不同的逻辑库名表示不同的已经存在的文件夹。

可定义在程序里,见例1.3

从上面我们可以看出,SAS系统对数据文件的管理是根据数据存放的位置(类型)分为临时文件和永久文件:

临时文件在退出SAS系统时自动被删除,永久文件在退出SAS系统时不自动被删除。

所以,我们通常是把作为中间结果使用的数据集或练习用的数据集作为临时数据集保存,而需要以后再用的数据集则可以保存为永久数据集。

数据集的命名:

临时数据集和永久数据集命名的区别是:

[※临时数据集以单水平命名,即只有数据集名,比如C9901。

※永久数据集则是两水平命名:

前一部分是它的库名,后一部分才是数据集名,中间用小数点连接。

(即库名.数据集名)

比如,要将建立的teach数据集放到aa库(永久库)中,数据集的命名必须用aa.teach来完成。

以这样方式指定的数据集名在程序提交运行后可以放到由aa指定的目录(文件夹)中。

同样要想读取或调用永久库中的该数据集时,也要以两水平命名方式(aa.teach)指定要读取的数据集。

]

生成永久库的方法有两种:

1.用程序的方式指定永久库:

(SAS程序中不能有路径,但libname除外)?

?

?

?

?

?

?

?

?

?

?

?

例1.3

libnameaa‘e:

\class’;

dataaa.c9901;

Run;

调用永久库中已经保存的数据集:

(print意为输出窗输出)

procprintdata=aa.c9901;

run;

2.在窗口用工具按钮生成(见视窗演示)

 

七、SAS表达式

SAS常量主要有数值型、字符型两种,并且还提供了用于表达日期、时间的数据类型。

例如

数值型:

12,-7.5,2.5E-10

数值型常数可以用整数、小数等。

字符型:

'Beijing',"LiMing","李明"

字符型常数为两边用单撇号或两边用引号(‘’)包围的若干字符。

日期型:

'13JUL1998'd日月年

日期型常数是在表示日期的字符串后加一个字母d(大小写均可),中间没有空格。

因为SAS是一种数据处理语言,而实际数据中经常会遇到缺失值,比如没有观测到数值,被访问人不肯回答,等等。

SAS中用一个单独的小数点(.)来表示缺失值常量。

SAS运算符包括算术、比较、逻辑等运算符。

算术运算符:

+-*/**(乘方),运算优先级按通常的优先规则。

比较运算符:

=(EQ):

等于

>(GT):

大于

<(LT):

小于

>=(GE):

大于等于

<=(LE):

小于等于

^=(NE):

不等于(或<>)

逻辑运算符:

有三种逻辑运算符:

AND(逻辑与)同时都存在范围小OR(逻辑或)满足其一范围大NOT(逻辑非),常用于条件语句

注意临界!

莫丢!

例如:

●(salary>=1000)AND(salary<2000)

表示工资收入在1000-2000之间(不含2000)

●(age<=3)OR(sex='女')

表示三岁以下(含三岁)的婴儿或者女性

●NOT((salary>=1000)AND(salary<2000))

表示工资收入不在1000-2000之间

复杂的逻辑表达式最好用括号表示其运算的优先级。

八、视窗概述(启动SAS)

当您第一次启动SAS时,将打开5个SAS主窗口(显示3个窗口,但可以切换):

SAS资源管理器窗口

结果窗口

程序编辑器窗口

日志窗口

输出窗口。

1.SAS资源管理器窗口

在“SAS资源管理器”窗口中,可以查看并管理SAS文件。

可使用此窗口:

∙创建新的SAS逻辑库和SAS文件

∙打开任意SAS文件

∙执行大多数文件管理任务,如移动、复制及删除文件

∙创建文件快捷方式

SASlibrary(SAS逻辑库)

SAS逻辑库也称SAS永久库。

它是一个或多个可由SAS识别并作为单元引用或存储的SAS文件的集合。

每个文件都是该逻辑库的成员。

2.程序编辑(PGM)窗口

“编辑器”窗口提供了一些有用的程序编辑功能,如编写程序命令、键入数据、读入文字等。

新版SAS还采用了视觉辅助系统,在编写程序时使用不同的颜色来区分程序中的不同元素,例如:

数据步和过程步以深蓝色标记、语句以浅蓝色标记、数据块以黄背景色标记,参数或选项以黑色标识等,帮助用户更清楚地编写、调试SAS程序。

“编辑器”窗口的初始标题是“编辑器—无标题n”。

在您打开文件或将“编辑器”窗口中的内容保存到文件时,窗口标题将更改为相应的文件名。

如果对“编辑器”窗口中的内容进行了修改,标题中将添加一个星号。

您可以同时打开多个“编辑器”窗口。

保存已编辑好的程序文件,在文件菜单中选择保存项,指定文件保存的位置,并给出文件名,扩展名是*.sas,文件标识是跑动的小人。

3.日志(Log)窗口

“日志”窗口显示有关SAS会话以及提交的所有SAS程序的消息。

记录提交执行的SAS语句执行后的有关详细说明,当出现程序语法错误或语句使用不当时,此窗口会显示记录错误(error)或显示警告(warning)等信息。

保存记录文件的扩展名为*.log。

4.输出(Output)窗口

“输出”窗口显示提交的SAS程序的分析结果。

创建输出时,该窗口将自动打开或移至显示的前端。

保存输出结果(output)文件的扩展名是*.lst,文件标识是表格。

5.结果窗口

当用户执行了编程或非编程时获得了SAS系统处理的结果,同时将以文件名的方式显示在左侧“结果”窗中(以HTML-超文本标记语言产生的输出结果)。

“结果”窗口可帮助您浏览并管理提交的SAS程序所生成的输出,可以在结果视窗中双击文件名。

“结果”窗口在提交可创建输出的SAS程序之前一直是空的,之后该窗口可打开或移动到显示前端。

6.SAS菜单栏及工具栏

1)标题区(TitleBar):

位于主窗口左上角,用以标识视窗执行软件的标题。

2)视窗大小控制区:

与其它视窗软件操作相同

3)菜单区(MenuBar):

SAS主窗口标题栏下是主菜单。

从SAS6.10版开始,其菜单和工具栏都是活动的,即菜单内容根据用户所处的状态(位置)不同而不同,如当光标在编辑窗时,会出现“运行“菜单,但光标在日志窗时,“运行”菜单则隐藏起来。

File(文件)菜单:

主要是有关SAS文件调入、导出、保存、打印以及退出SAS系统的功能。

Edit(编辑)菜单:

用于窗口的编辑(如清空、复制、剪切、粘贴、查找、替换)。

View(查看)菜单:

用于打开或切换窗口

Tool(菜单):

用于数据查询、调用各种编辑器(表格、图形、报表、文本等)

Run(运行)菜单:

用于提交编辑窗口的程序以及远程操作

Solution(解决方案)菜单:

该菜单下功能较为复杂,在SAS9.13版本与前版本有所变化:

Window(视窗)菜单:

窗口的布局调整以及切换

4)命令行(命令盒,enteracommand):

位于工具按钮的左侧,是用户键入命令的区域,单击“√”执行所键入的命令。

5)工具栏(ToolBar):

大部分图标的用法大家都比较熟悉,新按钮如“添加新逻辑库”、“SAS资源管理器”、“提交(程序)”和“中断”等。

本课重点掌握:

1.SAS语句的书写格式

2.SAS程序的基本组成与规则

3.SAS数据集的概念

4.SAS数据库的概念

 

练习1:

1.启动SAS,认识视窗界面,主要窗口相互间的切换及各自的功能

2.复习SAS语句的格式,SAS程序的组成以及数据步、过程步的规则。

3.建立个人永久库,以放置实习文件。

4.练习在程序编辑窗中输入以下程序:

12名女大学生体重(weight)与肺活量(vitalcapacity)测量数据

datalanxi1;

inputcode$weightvc;?

cards;

1422.55

2422.20

3462.75

4462.40

5462.80

6502.81

7503.41

8503.10

9523.46

10522.85

11583.50

12583.00

;

procprint;

procmeans;

run;

4.观察SAS各窗口的输出内容。

5.对输出结果可以进行修饰:

1)取消系统自动报告的日期及时间信息:

在程序开头加入options语句optionsnodatenonumber;

2)为输出结果加标题:

使用标题语句:

格式:

title‘标题内容’;将本例标题加入程序中。

该语句是全程语句,有持续性,直到退出SAS。

要取消标题,只需使用一个空title语句即可(title;)。

6.保存程序文件。

7.对程序修改,将建立的数据集放入个人永久库中。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2