我有一个范围从0到1的列。大多数值都是小数,但有些值正好是1.例如,当我将列格式化为10.4时,1s将转换为0.0001而不是1.0000!为什么会这样?
INFORMAT
probability_of_default 7.4
....
;
FORMAT
probability_of_default 7.4
....
;
INPUT
probability_of_default
;
答案 0 :(得分:4)
听起来你所做的是使用10.4的 INFORMAT 读取数据,而不是使用10.4的 FORMAT 显示数据。如果您指定信息的小数部分,那么您告诉SAS,当正在读取的文本中没有小数点时,假设在结束前有d
个字符。所以你告诉SAS将整数除以10 ** 4。相反,只使用没有任何小数部分的信息,例如10.
,而不是10.4
。