第四讲sas函数(一)

关键词: 第四,讲,sas,函数,一,做,DVP,以来,从,不会,到会
忘不了的情谊0 分享 时间:

做DVP以来,从不会到会,到熟悉,到后来的想做到完美,完美不只是减少出错率,更是想着用最少的代码,写出中意的描述。

看同事的dvp中多用到ifc和ifn函数,他们同很多函数一样,ifc是输出字符型的变量,ifn输出数值型的变量。但是前面的a和a1是需要贴一下代码分享的。

先看一下函数怎么用。ifc(a,b,c)当a是真的时候,返回b,否则为c,其中b.c是字符型变量。ifn(a1,b1,c1)同ifc,但是b1和b2是数值型的。

下面看一下事出有因的代码(大家可以直接复制运行),

proc format;value $sex"男"="1""女"="2";quit;data b;length query $200;set sashelp.class;ifnamein("约翰""爱丽丝")thensex="";sex_c=put(sex,$sex.);query=strip(name)||"的性别为:"||ifc(sex_c,strip(sex_c),strip("空缺"));run;

日志中报字符转化成数值:

sex_c是字符型的,所以选择ifc是正确的。而且strip连接时也是将字符的连接到一起,为什么会报字符转化成数值呢?其实是因为ifc(a,b,c)和ifn(a1,b1,c1)中a和a1都应为数值型的变量,故上面的代码应该为:

一品文章网我们以原创文章展示给大家

data b;length query $200;set sashelp.class;ifnamein("约翰""爱丽丝")thensex="";query=strip(name)||"的性别为:"||ifc(^missing(sex),strip(sex),strip("空缺"));run;

^missing(sex)语句返回数值型的0或1,则结果为:

其实小编平时写dvp描述的时候,是用cats连接的,

query1=cats("(",strip(name),")的性别为:(",strip(sex),")")。

今天就分享到这里,想强调的是sas学习需要注重细节,如果想了解更多关于ifc、ifn或者更多别的函数,请参见:《SAS Functions by Example Second Edition》(需要电子版的朋友可以直接加小编哦),讲解的很详细。小编再坚持两天就可以回家过年了,提前祝大家新年快乐!


第四讲sas函数(一) 相关文章:

心院长心自由家庭教育分享记录宝宝成长的唯美

人生,最难走的路是什么?

市委理论学习中心组举行集体学习

优选50句中秋文末

真没想到(把女生打了怎么办)女孩子打了孩子

墙裂推荐(鲤鱼打挺起身动作怎么练)鲤鱼打挺

俗语:“七不出,八不归”原来是这个意思,却

弘扬济南英雄气提升城市软实力

最扎心的情感语录

学习笔记丨南沙发展聚焦大湾区,面向全世界

热门排行

70018