您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业文化 > 72SAS软件应用基础
第二章SAS编程基础BasicProgrammingofSAS生物医学工程研究所Add:教学八楼三层东Tel:82035Lecturer:张玉华Email:zhangyh@sdu.edu.cn主要内容2.1SAS程序的使用常识2.2SAS数据集、常量、变量与观测2.3SAS函数2.4SAS操作符2.5数据步流程2.1SAS程序的使用常识SAS语句(statements)的基本结构SAS程序由语句组成语句由关键字开始,各项之间用空格分开语句都以分号;结束一个语句可以占多行,一行中可以写多个语句数据步和过程步数据步(Datastep):用来创建数据集过程步(Procstep):利用已创建的数据集完成特定的统计分析任务程序步环境设置语句SAS程序SAS程序的书写规则每个语句尽量占一行,如需要多行,则从第二行开始采用缩进格式所有数据步和过程步均以RUN;结束,内容缩进排列尽量只使用小写,或只把关键字大写,其余小写在较长程序段前后加空行或注释SAS程序的运行完整程序运行[运行]-[提交]F8提交工具按钮部分程序运行选中某程序段后提交提交第一行提交N行SAS程序中的注释方法:以*开始,以;结束/**/用途:程序说明,使程序清晰易读调试程序2.2SAS数据集、常量、变量与观测数据集(Dataset)数据集是SAS可以管理的结构化的数据,只有SAS数据集中的数据才能被SAS过程步处理。数据集为关系型,包含两部分内容:描述部分:包含数据集的一般信息,包括:数据集的名字及其成员类型数据集建立的日期和时间观测的数目、变量的数目数据集中每一个变量的属性信息数据部分:包含实际数据值SAS数据值被安排在一个矩阵式的表状结构中。观测(Observation)描述被观测对象的单一整体(如一个人、一个实验动物等)某些所研究特性的一系列数据值称为一个观测,又称观察。在数据集中每一行数据是一个观测。变量(Variable)变量指定了数据的某一特性。在SAS数据集中,每一个观测是由各个变量的数据值组成。在数据集中每一列数据是一个变量。变量的命名(数据集名也按此规则)变量名最多32个字符长一般由字母、数字、下划线组成第一个字符必须是字母或者下划线不能有空格特殊字符(如$,@,#)不允许在变量名中使用。SAS系统保留的特殊变量名,以下划线开始和结尾。如:_N_和_ERROR_等。合法变量名如:AA1abcA_1nameage变量特性名称(name)类型(type)数值型numeric字符型character(后跟“$”符号)长度(length):指存贮变量值的字节数,缺省8Byte,LENGTH语句输入格式(format):读入变量值的方式输出格式(informat):展现变量值的方式标记(label):变量名的描述性标识,不大于256个字符定义变量特性的两种方法:明确地说明:用input语句在首次出现时给出定义:用赋值语句例如:DATAA;C='BAD';PUTC;C='GOOD';PUTC;RUN;变量清单的简化表示如果要一次定义或指定多个同种类型变量,可以使用缩写的变量清单形式:(P15表2-1)INPUTNAME$VAR1VAR2VAR3VAR4VAR5VAR6;可以写成:INPUTNAME$VAR1-VAR6;这些变量需要:有序号(数字或字母序号)类型相同,或全是数值型的或全是字符型的。表2-1SAS变量清单名称形式缩写代表形如X1,X2,…,Xn的带有序号的名称X1-Xn从X1到Xn的所有变量形如X-P-A*的名称范围X-A从X到A的所有变量X-NUMERIC-A从X到A的所有数值变量X-CHARACTER-A从X到A的所有字符变量特殊SAS名称_NUMERIC_所有数值变量_CHARACTER_所有字符变量_ALL_所有变量缺项值当一个变量由于某种原因没有得到,称该值为缺项值或缺失值),在SAS中用“.”或空格表示。没有观测到数据错误计算错误常量(Constant)其值固定不变的量常用于赋值、运算等语句中。如:x=10;c=“张”;常量分为三类:数值常量:1.5-2.791.75E-5字符常量:“Hello”“ABC”‘Zhangli’日期、时间、日期时间常量:后接D,T,DT‘1JAN2000’D‘9:25:19’T‘1JAN2000:10:30:05’DT2.3SAS函数函数是一个功能模块,包括三个要素:函数名、参数、返回值函数的作用:根据参数计算函数值并返回。例:y=SUM(1,2,3);函数名:SUM参数:1,2,3返回值:6(函数运算结果)参数格式:用逗号分割:SUM(x1,x2,x3)参数为常量、变量用简化形式:SUM(OFx1-x3)参数为变量用列表形式:SUM(OFx1x2x3)参数为变量2.4SAS操作符(运算符)算术操作符***/+-比较操作符===^=逻辑操作符&(AND)|(OR)^(NOT)算术操作符***/+-作用:进行数学运算,得到数值结果。例:y=x**2+b;C=(12–4)*2;比较操作符===^=作用:比较二值的大小,如成立,结果为逻辑真值1;如不成立,结果为假值0。例:y=32;(结果y值为1)x=“ABC”“ABD”;(结果x值为0)x=“ABCDE”“ABD”;(结果为0)逻辑操作符&(AND)|(OR)^(NOT)作用:进行逻辑运算,结果仍为逻辑值真(1),假(0)SAS表达式用操作符将常量、变量、函数等连接起来进行运算,最终会产生一个值(表达式的值)。运算优先级:算术比较逻辑例:X+13LOG(Y)PART/ALL*1001-EXP(N/(N-1))AGE100STATE='NC'丨STATE='SC'2.5数据步流程数据步由DATA语句开始,对输入数据中的每一观测,都执行数据步一遍,当执行到数据步的最后一条程序语句(一般是Cards语句)时,将变量的当前值写入数据集中。然后SAS程序再回到数据步的第一条语句继续执行,读取下一个观测。就这样不断循环读取观测,从而建立起完整的数据集。一般来说,数据中有几行数据,则数据步执行几遍,建立的数据集中则有几个观测。例:DATAFITNESS;INPUTNUMSEX$AGEWEIGHTHEIGHT;RATIO=WEIGHT/HEIGHT;CARDS;1001F19471.691002M20551.741003F18491.66;RUN;NumSexAgeWeightHeightRatio1001F19471.6927.81071002M20551.7431.60921003F18491.6629.5181
本文标题:72SAS软件应用基础
链接地址:https://www.777doc.com/doc-3894017 .html