我有一个数据集,它有一个变量。我可以执行proc freq来显示下表:

然而,我想输出的是serumt=0.3的观察结果:
data new;
set AIM12_OAW;
where serumt=0.3;
run;我得到的错误信息如下:
注意:没有从数据集WORK.AIM12_OAW中选择任何观测值。注:从数据集WORK.AIM12_OAW.WHERE serumt=0.3读取了0个观察值;
我试过了
where serumt=0.21仍然没有观察到。奇怪的是如果我这么做了
where serumt=0.12它将输出一个观察值(应该是6)。
如果我这么做了
proc freq data=aim12_onw;
table serumt;
by serumt;
run;输出将为:

我不明白为什么where或if语句不能选择变量serumt。
我确实检查了serumt的格式。对我来说这看起来很正常。

我不知道如何处理这个变量。非常感谢你的评论。
发布于 2016-09-17 06:14:56
听起来这可能是一个浮点精度的问题-尝试如下所示
where round(serumt,0.01) = 0.30。
https://stackoverflow.com/questions/39540601
复制相似问题