2016-09-16 9 views
0

数値データがあります。数値変数値が範囲内にある場合に範囲を表示する汎用マクロをコーディングします。 range else valueが範囲の範囲よりも小さいか大きい場合、 '$$$'を表示します。

答えて

0

フォーマットは、ageが数値変数か文字変数かによって異なります。私はここに数値を仮定しています。文字であれば、$を追加する必要があります。

proc format; 
value age_A 
0-14 = '$$$' 
15-25 = '15-25' 
25-high = '$$$' 
;run; 

あなたは、データセット内のデータを変更したい場合は、その後のPUT機能を使用

proc print data = ; 
var age; 
format age age_a.; 
run; 

を使用し、その後のproc印刷/ FREQなどでこれを使用したい場合。

data ; 
set; 
new_var = put(age, age_a.); 
run; 
0

これを行うには、フォーマットを使用する必要があります。定型書式については、proc formathereで公式文書を参照してください。

+0

@ Apache11マクロは必要ありません。 @ user667489が示唆するように、 'proc format'でフォーマットを作成し、そのフォーマットをage変数に割り当てます。基本値が変更されていなくても、書式設定された値がデフォルトで表示されます。 – Longfish

関連する問題