全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1536 4
2011-03-15
data a;
if formno/10-int(formno/10)=0 then group=0;
if formno/10-int(formno/10)=0.1 then group=1;
if formno/10-int(formno/10)=0.2 then group=2;
run;

结果:group变量的取值只有0和2,为什么没有1呢?请高手指点
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-3-15 19:11:57
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-3-15 23:13:53
猜测是浮点值的问题。

data a;
        result=round(formno/10-int(formno/10), .1);
        if result=0 then group=0;
        else if result=0.1 then group=1;
        else if result=0.2 then group=2;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-3-16 08:57:33
你的问题等价于10的余数,你直接取余数就可以了

data a;
group=mod(formno,10);
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-3-16 15:56:40
因为本人刚开始学习SAS,所以很多还不懂,ntsean的好像更简单明了一点啊。谢谢各位啦!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群