カテゴリ変数をSASに保存する方法は、文字を表示する形式で数値として表示されます。これは他のプログラミング言語(例えば、 R、それらを扱います(factor
R)。例えばので
:
ここ
data have;
length names $15;
input names $;
datalines;
Bobby
Anna
Casper
Christine
;;;;
run;
proc format;
value yourformatf
1 = 'Bobby'
2 = 'Anna'
3 = 'Casper'
4 = 'Christine'
other = ' '
;
invalue yourinformati
'Bobby' = 1
'Anna' = 2
'Casper' = 3
'Christine' = 4
other = .
;
quit;
data want;
set have;
names_cat = input(names,yourinformati.);
format names_cat yourformatf.;
run;
私は(番号、名前に番号への名前)の形式及び/前後へ行くinformatを作成します。 names_cat
でソートできるようになり、必要に応じてソートされます。これは、cntlin
データセットを使用してプログラムで(フォーマットを作成して)行うことができます。詳細については、こちらの検索エンジンまたは検索エンジンを参照してください。
r
とよく似ていると、数値変数はfactor変数の値に似ていて、その形式はレベルのラベルに似ています。 (メタデータに格納されているレベル自体には直接的な類推はありませんが、多くのSAS procsには、Rで使用されるレベルと同じ方法でフォーマットに格納された数値を使用するオプションがあります)。
出典
2016-12-07 15:17:06
Joe
私は考えられません。しかし、たとえば、Bobbyの場合は1、Annaの場合は2、Casperの場合は3、Christineの場合は4を別の列に追加してください。新しい列で並べ替えます。 –
@ D.O。 Thx ^。私は自分自身について考えましたが、より洗練された方法が必要であると私は考えました。可能でない場合、SASは大きな時間を浪費しています:) –
混乱は、あなたがカテゴリ変数タイプを持っていると思うことです - あなたは文字変数タイプを持っています。 – Joe