SAS中的小数点

时间:2015-11-11 12:56:20

标签: sas

我有一个数据集,其中包含许多变量,所有变量的数值均为小数。

A
12.456756
134.677546
1.44563
86.56674998675

我只想在变量中输入两位小数 我使用的是格式,但它只用于显示。

data want;
set have;
format A best5.2;
run;

但是当我将数据集复制到另一个库或Oracle时,它会显示整个十进制值。如何将值仅减少到两位小数?

2 个答案:

答案 0 :(得分:3)

使用ROUND()功能。

data have ;
  input A;
cards;
12.456756
134.677546
1.44563
86.56674998675
;

data want ;
   set have ;
   b = round(a,0.01);
   put @5 a @20 b ;
run;

12.456756      12.46
134.677546     134.68
1.44563        1.45
86.566749987   86.57

答案 1 :(得分:0)

一个简单的解决方法是将格式化数值转换为字符值。在另一个数据库中导入时,字符值与任何格式都无关,而只与字符串有关。然后你必须将它转换回数字,但至少其他数据库不需要了解SAS-Formates的一些内容:

data want;
set have (rename=A=Atemp);
A= put(Atemp,best5.2);
drop Atemp;
run;