SAS将数字列导入科学记数法



我正在使用proc import在sas studio中导入sas7bdat文件,数据集中的一个变量正在更改为科学记数法,例如,1234567891011121显示为1.2345678E15

我对SAS相当陌生,不确定什么功能可以帮助保留这个特定列的原始16位格式,而不是科学记数法。该列是数字数据类型,其长度显示为8。我看过其他类似的帖子,但没有找到一个解决方案。

SAS将所有数字存储为64位二进制浮点数,因此使用8字节的长度来存储值是正确的。您不能使用更多字节,因为存储所有64个but只需要8个字节。如果你使用更少的字节,你会失去精度,不能存储所有的16位数字。

SAS使用格式来控制值如何作为文本打印。您可以使用FORMAT语句将格式附加到变量。

看起来你要么在用BEST12。或者让SAS使用其默认的显示数字的方式,在大多数情况下将使用BEST12。格式。

如果你想用16位十进制数字打印数字,那么只需附加16。格式化为变量。

或者您可以使用COMMA21。而格式化后,数字将以千位分隔符打印,这样人类就更容易阅读它们。

在数据步骤中为变量附加格式的示例代码。

data want;
set have;
format mynumber 16.;
run;

最新更新