pobel 发表于 2014-8-5 17:02
楼主,其实用int(survyear)+1要更直观
groupsy=ifn(survyear>=0,int(survyear)+1,0);
en .
我觉得ceil(survyear)可能有广义的意思,而int(survyear)+1可能局限但对此问题直观.
+1就是分组中=的作用.
groupsy3=ifn(survyear>=0,int(survyear)+1,ifn(survyear=. , . , 0));
我有点儿不明白ifn函数中的第3个参数中0的意义:
SAS运行过程是不是理解为:
ifn(survyear=. , . , 0)就是
1.if survyear=. then groupsy=.;
2.else if survyear^=. then survyear=0;
3.if survyear=0 then 满足survyear>=0的条件则groupsy=int(survyear)+1;
是这样理解的吗?