2016-09-16 3 views
1

私は変数を持つデータセットを持っています。私は、次の表を示すためにのproc FREQを行うことができます:SAS:特定の変数のwhereまたはif条件を使用できません。

proc freq

は、しかし、私は、出力したい観測したserumt = 0.3:

data new; 
set AIM12_OAW; 
where serumt=0.3; 
run; 

私は、次のようなエラーメッセージが表示されました:

を注:データセットWORK.AIM12_OAWからの観測は選択されていません。 注:データセットWORK.AIM12_OAW.WHEREから読み取られた観察値は0でした。

私はまだ観測

where serumt=0.21 

を試していません。奇妙なことは私がした場合でした

where serumt=0.12 

それは1つの観測(6でなければならない)を出力します。

私は

proc freq data=aim12_onw; 
table serumt; 
by serumt; 
run; 

をした場合、出力は次のようになります。

proc freq2

変数serumtがどこでか、if文に選択することができなかった理由を私は理解できません。

私は血清のフォーマットをチェックしました。それは私のために正常に見えます。

format

私は、この変数をどのように扱うか見当がつかない。コメントありがとうございました。それは浮動小数点精度の問題であるかもしれないよう

答えて

1

サウンズ -

where round(serumt,0.01) = 0.30のようなものを試してみてください。

+0

ありがとうございました!それはうまくいった。これを避けるにはどうすればいいですか?この変数を認識可能な他の変数に変換する提案はありますか? –

+0

変数を作成した時点で変数を丸めたり、丸められた変数を作成したりします。 – user667489

関連する問題