博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SAS学习经验总结分享:篇二—input语句
阅读量:5040 次
发布时间:2019-06-12

本文共 1356 字,大约阅读时间需要 4 分钟。

SAS编程语言中input语句的应用

  •         SAS数据步的建立离不开input语句,在读入外部数据或cards语句后面的数据块时需要通过input语句定义变量。下面介绍input语句定义变量的四种方法:  SAS变量分为字符型和数值型,字符型变量加 $ 符号。

   (本文为博主原创,转载必须标明出处: )

  1. input  变量1 变量2 $;/*只列出变量名,变量之间以空格分隔,只是字符类型加$符号。缺点:不能输入带空格的数据,并且字符类型数据最多8个字符。*/

  2. input  变量1 1-X 变量2 $ X+1-Y;/*变量名用列格式定义对应的数据,变量名后的数字指明变量对应的数据所对应的列的位置。缺点:变量数据要严格按照列格式对应的列输入。*/

  3. input 变量1 $变量1总长度.小数位数  变量2 变量2总长度. ;/*指明变量的类型,变量长度。缺点:需要严格按照列格式输入数据。*/

  4. input @变量名1 $变量长度.小数位数;/*通过绝对指针的方式读入变量对应的数据。确定:把变量对应的列位置计算出来。*/

  •     上述第三种是常用的一种方式,对于数据包含特殊字符的情况,可以通过格式修饰符的形式进行处理,格式修饰符包括以下三种:

  1. 冒号(:):从非空单元格开始读取数据,直到满足下面任意情况:(1)遇到下一个空格(2)变量长度已读满(3)数据行结束。例:input 变量1 :$变量长度. 变量2 @;加冒号之后数据输入时不用严格按照数据长度对应列排布了,因为遇到空格即使长度不够也会停止。这是比input第三种读取方式的优势所在。

  2. &:修饰数据中含有空格的字符数据。例:input 变量1 &:$长度.小数位数 变量2 长度.小数位数 @;

  3. ~修饰读取数据对应的列包含单引号、双引号或分隔符的字符列,input 变量1 ~&:$变量长度.小数位数 变量2 变量长度.小数位数;

  •     input 变量中日期和时间变量是转化成数值型变量储存的,读入日期格式的方法:

  1. input 变量名1 $ 变量名2 $ 变量名3 datew.; 日期格式datew.默认为7,w指日期长度,格式ddmmmyy或者ddmmmyyyy,月是应为前三个字符;

  2. input 变量名1 $ 变量名2 $ 变量名3 datetimew.d;日期时间格式datetimew.d,默认16位,我w指日期时间的长度,d小数位用来指定秒的值,ddmmmyyhh:mm:ss.s;

  3. input 变量名1 $ 变量名2 $ 变量名3 Julianw.;读入日期书写格式yydd或yyddd,ddd是按照年初到现在的天数。

  4. 其他格式:ddmmyyw. 、mmddyyw.、yymmddw. 、timew.d等

  •     如果认为通过input定义变量的时候设置变量类型及格式较为麻烦,可以先通过informat语句定义变量格式,再用input来引用变量名即可。

    如日期变量:informat 变量名 yymmddw.;   input 变量名;

  •     字符型变量长度超过8字节,需要在input语句之前通过length语句定义变量长度:length 变量名 $ 长度;

 

转载于:https://www.cnblogs.com/smallcrystal/p/4841119.html

你可能感兴趣的文章
socket
查看>>
Vue中使用key的作用
查看>>
二叉索引树 树状数组
查看>>
日志框架--(一)基础篇
查看>>
Java设计模式之原型模式
查看>>
Spring学习(四)-----Spring Bean引用同xml和不同xml bean的例子
查看>>
哲理故事与管理之道(20)-用危机激励下属
查看>>
关于源程序到可运行程序的过程
查看>>
wepy的使用
查看>>
spring mvc常用注解标签
查看>>
facenet模型训练
查看>>
Maven中的SnapShot版本和Release版本
查看>>
淘宝技术发展
查看>>
am335x ar8031 双网口配置记录
查看>>
nodejs之入门
查看>>
ios中的三种弹框《转》
查看>>
Weakness and Poorness CodeForces - 578C
查看>>
2873=老--质价比
查看>>
Oracle 存储过程简单语法
查看>>
程序员必须软件
查看>>