第2章 SAS编程基础.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
变量输入和输出格式 $ 规定为字符输入格式 Informat 规定有效SAS输入格式 Format 规定有效的SAS输出格式 W 规定输入数据的列数 D 规定数值输入格式中保留小数的位数 输入格式是SAS系统用来读入数据值的一个指令。 $ INFORMAT W.D 输出格式是SAS系统用来输出数据值的一个指令。 $ FORMAT W.D 例12 数值变量输入格式应用举例。 data a; x=12345.1234; informat x 12.4; format x 8.2; put x=; run; 结果显示x=12345.12 例13 字符变量输入格式应用举例。 data; input name $5.; cards; xyz uvw ; 变量输入和输出格式 自动变量 自动变量 说明 自动变量 说明 _N_ 观测序号 _All_ 所有变量 _Error_ 错误信息变量 First.Variable 同一by组第一个观测 _Numeric_ 所有数值变量 Last.Variable 同一by组最后一个观测 _Character_ 所有字符变量 自动变量是由数据步语句自动创建的。这些自动变量被加入到程序数据向量(PDV)中,但是并不输出到数据集中。 例14 使用自动变量first.variable last.variable data one; set resdat.class; proc sort data=one;/*将观测按照age的数值排序,拥有相同数值的age为一个by组。*/ by age; data two; set one; by age; if first.age=1;/*取每个age by组的第一个观测*/ proc print data=two; Run; 输出结果 Obs Name Sex Age Height Weight 1 Joyce F 11 51.3 50.5 2 James M 12 57.3 83.0 3 Alice F 13 56.5 84.0 4 Alfred M 14 69.0 112.5 5 Janet F 15 62.5 112.5 6 Philip M 16 72.0 150.0 表达式 表达式由一系列操作符和操作对象构成,产生一个目标值。使用表达式可以对变量作变换和赋值,创建新变量,计算新数值以及控制条件语句的运行等。 操作对象有: 变量 常数 操作符包括: 算术算符 比较算符 逻辑算符 SAS函数 括号 例15 表达式里允许有空格。 Y=X+10; Y= X + 10; /*例中,两语句等价*/ 引用SAS常数 SAS常数是SAS系统可以识别的一些固定值。 SAS常数的五种类型: 数值常数 字符常数 日期时间数值常数 十六进制数值常数 十六进制字符常数 数值常数的表示格式 standard notation scientific (E) notation hexadecimal notation 标准格式; 科学计数法; 十六进制格式。 标准格式:1,01,+1,-1,1.1; 科学计数法:1.1e11, 1.2e-12; 十六进制格式:1cx,12x,9x 引用字符常数 SAS比较引号括起来的字符时是区分大小写的。如’ABC’和’abc’不同。 十六进制字符常数可以表示为’543’x, x紧跟在引号部分后面。 例16 引用带引号的字符常数。 name=TOMS; name=TOMS; /*例中,两语句等价。*/ 引用日期时间常数 例16 引用日期时间常数。 ’1jan2000’d; ’01jan00’d; ’9:25’t; ’18jan00:9:27:25’dt if begin=’01JAN2000’d then end=’31DEC2000’d 将日期时间值表示为常数时,要使用相应的格式值。格式值带单引号,后面跟一个 D(日期),T(时间)或DT(日期时间)。 SAS算符 算术算符 算符 含义 举例 算符 含义 举例 ** 乘方 A**2.5=A2.5 + 加 5+C * 乘 A*B*3 - 减 C-A / 除 X/A 例17 算术算符应用。 data; X=3.5**2.5; put X=; Y=9+1/3; put Y=; X=.; Y=1+X; put Y=; /*Y也是缺失值*/ run; 结果 X=22.917651494 Y=9.3333333333 Y=. 比较算符 例18 比较算符应用。 if xy then c=5; else c=12; 比较算符经常出现在IF语句里。 算符 等价形式 含义 举例 = Eq 等于 X=Y ^= Ne 不等于

文档评论(0)

a13355589 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档