SAS语言入门

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

上海**通信技术有限公司Jim(seniordba@sina.com)2012-11SAS基础知识StatisticalAnalysisSystem2培训大纲SAS简介基本术语SAS语法函数宏数据步过程步3SAS介绍1、什么是SAS:SAS(StatisticalAnalysisSystem)是世界上最著名的统计分析系统之一,具有完备的数据访问、管理、分析和呈现功能,被誉为国际标准统计分析系统2、世界上公认的三大统计软件之一SAS-StatisticalAnalysisSystemSPSS-StatisticalProductandServiceSolutionsS-PLUS44SAS的发展历程1966年由美国北卡罗来纳州(NorthCarolina)州立大学开始研制1976年成立美国SAS软件研究所,并开始对SAS系统进行维护、开发、销售和培训等工作1985年推出了SAS/PC(6.02)版本1989年推出SAS/PC(6.04)版本1997年下半年推出适用于多种操作系统的6.12版本2000年2月又正式推出SAS系统8版本2002年推出全新的SAS9版本SAS公司于1989年在北京成立了办事处1997年,SAS软件研究所正式宣布成立大中国区1999年3月在国内设立独资公司——赛仕软件(上海)有限公司。5SAS系统界面6显示管理系统1、三个常用窗口:EDITOR程序编辑窗口F5LOG日志窗口F6OUTPUT输出窗口F72、菜单:执行各种功能操作3、工具栏:方便执行常用功能操作7编写、运行、调试编写SAS程序:–在ProgramEdit程序编辑窗口输入源程序–根据题意编写程序–例:有一批体检数据,包括受检者的姓名、性别、年龄、身高、体重信息。要求按性别分别计算身高、体重的描述性统计量:均值、标准差、最大值、最小值。8编写、运行、调试姓名性别年龄身高体重ZHANGLINF47156.347.1ZHAOHUAM38172.461.5WANGQANGM41169.264.5LIULIF52158.253.6SHIDONGF39160.148.0KONGYINGM29174.164.6LILINGF37152.342.2GUANFENM32166.260.2MAQIANGM26180.374.3NEWHUAM31178.280.2TANGNEUF35169.260.8GENGJIEM24176.073.3SUNHONGF27158.349.9DONGLINF33162.451.6TONGLINGM34170.458.99DATAA;INPUTNAME$SEX$AGEHEIGHTWEIGHT;CARDS;ZHANGLINF47156.347.1ZHAOHUAM38172.461.5WANGQANGM41169.264.5LIULIF52158.253.6SHIDONGF39160.148.0KONGYINGM29174.164.6LILINGF37152.342.2GUANFENM32166.260.2MAQIANGM26180.374.3NEWHUAM31178.280.2TANGNEUF35169.260.8GENGJIEM24176.073.3SUNHONGF27158.349.9DONGLINF33162.451.6TONGLINGM34170.458.9;PROCSORT;BYSEX;PROCMEANS;BYSEX;VARHEIGHTWEIGHT;RUN;10–程序说明–数据步:将数据读入系统,建立数据集。以DATA语句开始INPUT语句描述数据变量,用$表示变量是字符型CARDS语句指示后面是数据每行为一个观测数据,数据间无分号数据最后以“;”开头的空行结束–过程步:对数据集中数据进行分析、处理。以PROC语句开始,调用SAS标准过程每个语句都以“;”结束。整个程序最后要有RUN语句。编写、运行、调试11–SAS程序的书写格式:•不分大小写•单个名称中不能空格,不同名称间必须空格•一行可写多条语句,用分号分隔•一条语句可写多行•数据行后不加分号,数据最后单独加一分号行•程序用RUN;语句结束编写、运行、调试12查看结果–激活OUTPUT窗口(F7)–注意:没有正确结果,可能是:•程序语法错误:→查看日志窗口错误信息•程序逻辑错误:→分析源程序•没有调用能输出结果的过程查看运行过程及出错信息–激活LOG窗口(F6)–黑色文字:源程序及运行情况–蓝色文字:程序运行情况的说明信息–红色文字:出错信息–绿色文字:警告信息编写、运行、调试13培训大纲SAS简介基本术语SAS语法函数宏数据步过程步14数据集类型a.横截面数据集(cross-sectionaldataset):即在同一时间截面上的统计数据。b.时间序列数据集(timeseriesdataset):是按时间顺序排列的统计数据。c.混合横截面数据集(pooledcrosssectiondataset):有些数据既有横截面数据的特点又有时间序列的特点,但每一时点的样本不同15数据集类型d.综列数据集(paneldataset):由横截面数据集中每个样本的一个时间序列组成。(定点长期调查)差异:综列数据是调查经历一段时间的同样的横截面数据,而混合横截面数据调查的是不相同的横截面数据。两者的唯一区别在于是否个体发生改变。面板是个体一定不能够发生变化。其它专门数据类型:1、离散数据(discretedata):通常在考察个人、家庭或企业的决策行为时,通过问卷调查获得,由此发展出“离散选择模型”。定量数据与定性数据2、持续数据(survivaldata):用于考察变量从开始到结束或调查终止前所经过的时间长度,如失业持续时间、罢工持续时间,股市牛熊市持续时间1616基本术语名词术语1、数据集:数据的集合,由样本(行)和变量(列)组成SAS数据集样本(观测、记录)、变量(字段、域)、表(数据集)、数据库变量属性(名称、类型、长度、输入格式、输出格式、标签)类型:数字型、字符串型输入格式:数据被SAS读取的格式输出格式:数据呈现给人们的格式17培训大纲SAS简介基本术语SAS语法函数宏数据步过程步18SAS程序规范1、SAS程序由语句组成,语句用分号结束。2、几个SAS语句可以写在同一行上,但每句要使用分号3、一个语句也可以写成几行,只要语句中的单词不被断开就可以。在一个语句中各个单词之间至少要有一个空格。4、SAS程序中不区分大小写5、用/*注释的内容*/来对程序进行注释*…;也用来表示注释。6、SAS中的变量的命名规范以字母或下划线开始,字母不区分大小写。后面的字符可以是数字,字母或下划线。不能在定义变量中使用系统保留的关键字名称,最长32个字符。19SAS语言和SAS程序常量1.数值常量数值常量由数字0~9、小数点、正负号和E等符号组成。例如:12231.689E-8(1.689×10-8)数值常量的缺省值用“·”来表示。数值变量常用的输入或输出格式符号是:w.d或w.w表示变量的字符长度,d表示变量中小数的位数Height4.2age2.202.字符常量字符常量由1~200个字符组成。在赋值语句中,字符常量要用定界符单引号或双引号括起来。字符常量的缺省值用空格表示。字符变量常用的输入或输出格式符号是$w.例如SEX$1.3.日期、时间和日期时间常量该型常量必须用单引号括起,后续一个D(Date)、T(Time)或DT(DateTime)表示其类型。‘8JAN1999’D表示日期值‘10:45’T表示时间值‘8JAN99:9:25:14’DT表示日期时间值例:21日期变量常用的输入或输出格式符号是YYMMDDw.或DDMMYYw.或MMDDYYw.或DATEw.w表示日期变量中字符的长度yymmdd8.date8.mmddyy6.SAS的时间输出格式注意,当输出时间变量时,输出格式用yymmdd8.或date8.或不用输出格式,其输出的结果形式是完全不一样的。例如,19801202的输出结果分别是80-12-02,02DEC80和7641。对于日期变量,如果输出时不给出输出格式,那么输出结果是一个按日排列得到的常数。SAS系统规定1960年1月1日等于1,然后以此类推。例如,1959年1月1日等于-365,1979年1月1日等于常数6940。22数组(array)语句当需要用同一种方法处理很多变量时,可以用数组语句定义这组变量为某个数组中的元素。1.显示下标array语句:由一个数组名字,在数组中元素个数的说明,及元素列表组成。2.隐含下标array语句:由一个数组名字、一个下标变量和列表名组成。23显示下标array语句形如:ARRAYarray-name{subscript}$array-elements(initial-values)例arraysimple{3}redgreenyellow;arrayx{5,3}score1-score15;arrayc{3}等价于arrayc{3}c1-c3arraytest{3}t1t2t3(908070)访问数组变量:test{1}=1;数组中的变量必须全是数值型或字符串型SAS中数组存储的是变量,不是数据。数组只在数据步(DATASTEP)中有效。数组的标号从1开始。规定数组中每一维的上下界:arrayx{1:5,1:3}score1-score15;{*}表示SAS系统通过数组中变量的个数来确定下标。可用dim(数组名)函数计算数组元素个数。_temporary_建立一个临时数组元素列表arraya(3)_temporary_(11,22,33);24隐含下标array语句形如:ARRAYarray-name(index-variable)$array-elements(initial-values)如:arrayxx1-x5DOOVER语句对隐含下标数组元素执行DO组里的语句语句格式:DOOVERarray-name;sas语句;END;其中:选项array-name规定一个隐含下标数组。25算术符号:+加a+b-减a-b*乘a*b/除a/b**乘方a**3(a的3次方)比较算符:=或EQ等于a=b^=或NE不等于a^=b或GT大于ab=或GE大于等于a=b或LT小于ab=或LE小于等于a=binSAS算符26逻辑算符:&或and与a&b|或or或a|b^或not非^a其他算符:||!!连接两个字符串read||book(最小值)(最大值)27运算次序在括弧里的表达式先计算第一级:**(+-)前缀^第二级:*/第三级:+-第四级:||第五级:其余比较算符第六级:&第七级:|对于相同优先级的算符,左边的运算先做。但有两个例外:1.对最高优先级,右边的运算先做2.当两个比较算符围着一个量时,这个表达式看成是有一个and出现一样被计算。如:12<age20,等价于:12<age&age2028SAS表达式SAS表达式是指由SAS变量,SAS函数,SAS算符以及数学符号等连接而成的一个式子y=x/(log(y+1)+1)10=age=20SAS表达式是SAS语言的一种基本元素,它主要用在建立数据集的程序中。29赋值语句和累加语句赋值Variable=expression例:x=a+b;累加Variable+expression例:ifx=5thenn+1;例:n+(-1)累加语句中的变量必须是数值型变量,初始值为030字符的比较和转换1、按机器使用的字符排列次序(ASCⅡ或Unicode)从左到右被比较。2、两个不等长的字符串被比较时,系统在较短的字符串后自动添上空格3、数字型转换为字符型时,转换为BEST12.的输出格式,不足宽度的在左边填充空格。31Do语句(循环语句)DO语句规定,

1 / 91
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功