今天在做数据需求的时候遇到一些问题,由于不可以在数据库里面做,只好在SAS里面实现,这就遇到了一些麻烦,需要使用一些函数实现部分功能,如查找字段中某个特殊字符出现的次数,查找某个字符的位置等,下面一一列举出来:
count——data step
在data step里面count可以实现计数功能,就是对字段中的某个特殊字符计数,如
data ta;
set tb;
a=count(name,‘*‘);
run;
就是在tb表中增加一个字段a,用来存放name中*出现的次数
find——proc sql
find可以在proc sql过程中,使用,就是查找某个字符出现的位置
find(name,‘*‘)
就是在name中查找*出现的位置
substr
就是取子字符串,这个比较简单,需要注意的是,针对汉字而已,SAS系统不会自动去匹配汉字的位数,及:要取2个汉字,就是4位,不可以是2位,这个和Oracle还是有点区别的(我理解的也不一定对,欢迎指正)
input
可以把字符转换为数值
input(a,8.) 输出就是数值型的了
本文参考了网上资料、官方文档
原文地址:http://blog.csdn.net/alex201203/article/details/39937037