欢迎来到天天文库
浏览记录
ID:46949363
大小:352.31 KB
页数:18页
时间:2019-12-01
《《as程序基础》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章sas语言与数据管理SAS系统强大的数据管理能力、计算能力、分析能力依赖于作为其基础的SAS语言。SAS语言是一个专用的数据管理与分析语言,它的数据管理功能类似于数据库语言(如FoxPro),但又添加了一般高级程序设计语言的许多成分(如分支、循环、数组),以及专用于数据管理、统计计算的函数。SAS系统的数据管理、报表、图形、统计分析等功能都可以用SAS语言程序来调用,只要指定要完成的任务就可以由SAS系统按照预先设计好的程序去进行,所以SAS语言和FoxPro等一样是一种第四代语言。2.1SA
2、S语言构成SAS数据步(DATAsteps)以DATA语句开头,以RUN语句结尾。DATA步中可以使用INPUT、CARDS、INFILE、SET、MERGE等语句指定数据来源输入数据,也可以用赋值、分支、循环等编程结构直接生成数据或对输入的数据进行修改过程步(PROCsteps)要求SAS系统从过程库中调出一个过程模块并执行它。过程步以PROC语句开始,可以包含多个相应的SAS语句。个SAS程序就是由数据步、过程步或两者的任意组合而成。每一个程序步通常由若干语句(statements)构成。2.1
3、.1SAS语句SAS语言程序由数据步和过程步组成。数据步用来生成数据集、计算、整理数据,过程步用来对数据进行分析、报告。SAS语言的基本单位是语句,每个SAS语句一般由一个关键字(如DATA,PROC,INPUT,CARDS,BY)开头,包含SAS名字、特殊字符、运算符等,以分号结束。SAS关键字是用于SAS语句开头的特殊单词,SAS语句除了赋值、累加、注释、空语句以外都以关键字开头。SAS名字在SAS程序中标识各种SAS成分,如变量、数据集、数据库,等等。SAS名字由1到32个字母、数字、下划线组
4、成,第一个字符必须是字母或下划线。SAS关键字和SAS名字都不分大小写。2.1.2SAS表达式SAS数据步程序中的计算用表达式完成。表达式把常量、变量、函数用运算符、括号连接起来得到一个计算结果。SAS常量主要有数值型、字符型两种,并且还提供了用于表达日期、时间的数据类型。例如数值型:12,-7.5,2.5E-10字符型:'Beijing',"LiMing","李明”日期型:'13JUL1998'd时间型:'14:20't日期时间型:'13JUL1998:14:20:32'dt数值型变量在数据集中的
5、存贮一般使用8个字节。SAS的字符型变量缺省的长度是8个字符,但是如果在INPUT语句中输入字符型变量时指定了长度则不受此限制2.1.2SAS表达式SAS运算符包括算术、比较、逻辑等运算符。2.1.2SAS表达式算术运算符为+-*/**加减乘除乘方(3**5表示35)运算优先级按通常的优先规则。比较运算符比较运算符用于比较常量、变量的值大小、相等,包括=^=><>=<=INEQNEGTLTGELE比较运算符运算符IN是一个SAS特有的比较运算符,用来检查某个变量的取值是否在一个给定列表中,比如pro
6、vin('Beijing','Tianjin','Shanghai','Chongqing')可以判断变量prov的取值是否为四个直辖市之一。比较运算符比较准则:数值和字符都可以比;结果为真赋值1,假赋值0;字符值从左到右逐个按ASCII码排列序列进行比较;缺失值参加比较时,它比任何有效值都小。逻辑运算符算符等价形式含义&AND与
7、OR或^NOT非例如(salary>=1000)and(salary<2000)表示工资收入在1000-2000之间(不含2000)(age<=3)or(sex=‘女’)
8、表示三岁以下(含三岁)的婴儿及妇女not((salary>=1000)and(salary<2000))表示工资收入不在1000-2000之间复杂的逻辑表达式最好用括号表示其运算优先级以免误记优先规则并可利于阅读程序。表1某小学6名9岁男生3项智力测验得分我们先来看一个实例:某小学6名9岁男生3个项目智力测验得分资料如下试计算这6名男生各项目的平均得分。Datazhili;inputname$x1x2x3;cards;Zhang141328Li101415Liu191422Yang91014Zeng
9、9825He9912;Run;Procprintdata=zhili;Run;Procmeansdata=zhili;varx1x2x3;run;在这个例子中,我们看到:data,input,cards,proc,var,run是关键词;zhili是数据集名;name,x1,x2,x3是变量名;means是过程名;data=是means语句中的选项;$是特殊字符。现在,我们给出SAS语句的定义:SAS语句是由关键词、SAS名、特殊字符或运算符组成并以分号结尾的字符串。
此文档下载收益归作者所有