SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 2330|回复: 3
打印 上一主题 下一主题

怎样保持sas小数位中最后的为0的数

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2010-12-31 20:14:56 | 只看该作者

怎样保持sas小数位中最后的为0的数

当sas中数值型变量小数位最后是0时直接省略,如输入26.030则最后显示为26.03,小数点后最后的一位为0,故省略。如输入6.300最后显示为6.3。
问有没有什么方法能够保留小数点后最后的为0的数?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2011-1-2 16:46:45 | 只看该作者

Re: 怎样保持sas小数位中最后的为0的数

设置输出格式
[code:1vx9jgg9]
data a;
x=1.12030;
run;
proc print data=a;
format x 7.6;
run;
[/code:1vx9jgg9]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2011-1-4 14:14:55 | 只看该作者

Re: 怎样保持sas小数位中最后的为0的数

多谢,由于一直没有改过sas的显示形式,当sas中数值型变量的显示形式是best12.时是不显示小数位最后的0的,也不能更改(best显示形式是由sas自己决定显示位数)。当改成format 为“d”时即可调整。楼上的语句也可以
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2011-1-4 22:59:35 | 只看该作者

Re: 怎样保持sas小数位中最后的为0的数

D
Dw.s s < w, s ≤ 16 Writes numbers with at least s significant digits
using, within certain ranges, the same number of decimal places.
我是没有理解以上的解释。

data _null_;
        x =2.32;          x1=2.320;
        put x =d6.3 x1 =d6.3;
run;

x=2.320 x1=2.320

在sas里[u:qktqmig4]好像没有[/u:qktqmig4]如此的format可以保持数字的原值。比如说上例x =2.32;          x1=2.320;
也就是说,保持了x1里的0,也给x添加了一个多余的0.
另外,好像使用Dw.和w.s format也没有很大区别吧。
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-6-13 18:27 , Processed in 0.068267 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表