楼主: chaosxiao
10619 10

sas 截取2位小数(非四舍五入) [推广有奖]

  • 6关注
  • 0粉丝

等待验证会员

本科生

0%

还不是VIP/贵宾

-

威望
0
论坛币
308 个
通用积分
0
学术水平
6 点
热心指数
2 点
信用等级
1 点
经验
2224 点
帖子
75
精华
0
在线时间
64 小时
注册时间
2012-6-13
最后登录
2013-7-15

楼主
chaosxiao 发表于 2013-5-15 23:11:58 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
data a;
input i $20.;
datalines;
0.125
-1.125
1.125
100.125
2.12567
-10.12345
;
run;
/*data b;*/
/*set a;*/
/*j=i-int(i);*/
/*y=input(j,$20.);*/
/*if j<0 then z=substr(y,1,5);*/
/*if j>0 then z=substr(y,1,4);*/
/*yy=int(i)+z*1;*/
/*run;*/
直接截取2位小数,即小数点后全为0.12
我这样测试了好像可行,有没有更好的方法
二维码

扫码加我 拉你入群

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

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

关键词:四舍五入 SUBSTR Input Lines Data

回帖推荐

zhou.wen 发表于4楼  查看完整内容

OR

沙发
gyqznufe 发表于 2013-5-15 23:22:25
要那么精确干嘛?路过,顶!
知常容·容乃公·公乃王!
创新源于学、问、思、行、果!
言传身教,请用事实与数据说话!
舍而得之:福、禄、寿、喜、财

藤椅
chaosxiao 发表于 2013-5-15 23:25:43
少考虑一个 特殊的 比如 -100.000 100.00000
这样即使增加if j>=0 then z=substr(y,1,4); 也不能得到-+100.00

板凳
zhou.wen 发表于 2013-5-15 23:34:04
  1. data out;
  2. set a;
  3. position=index(i,'.');
  4. out=substr(i,1,position+2);
  5. run;
复制代码
OR
Practice Is The Best Teacher!

报纸
zhengbo8 发表于 2013-5-15 23:37:48
  1. data a;
  2.         input i $20.;
  3. datalines;
  4. 0.125
  5. -1.125
  6. 1.125
  7. 100.125
  8. 2.12567
  9. -10.12345
  10. ;
  11. run;

  12. data b;
  13.         set a;
  14.         length yy $10;
  15.         yy=substr(i,1,index(i,'.')+2);
  16. run;
复制代码

2013-05-15_233039.gif

地板
chaosxiao 发表于 2013-5-15 23:39:43
好吧 用必杀技  
iii=prxchange('s/(\d+).(\d\d)(\d+)/$1.$2/',-1,i);

7
ruihuizhou 发表于 2013-5-15 23:41:18
也在学习SAS

8
yuerqieqie 发表于 2013-5-15 23:41:48
如果i都一定有至少2位小数,下面的code应该可以实现
data test;
        set a;
        j = input(i, 8.2);
        yy = sign(j) * round(abs(j) - 0.005, 0.01);
run;

9
chaosxiao 发表于 2013-5-15 23:56:55
大家回答都很精彩,谢谢!
从@zhou.wen and @zhengbo8方法看这题的核心为 substr 和 index 函数联用

10
playmore 发表于 2013-5-16 08:36:01
data b;
        set a;
        j=INT(i*100)/100;
run;

你看这样行吗?
已有 1 人评分学术水平 收起 理由
jingju11 + 1 把数字当成字符来处理,也许弊多利少。

总评分: 学术水平 + 1   查看全部评分

playmore邀请您访问ChinaTeX论坛!!!进入ChinaTeX论坛

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-25 08:15