度数変数を考慮に入れた順位付けについて
[OS] ALL
[リリース] ALL
[キーワード] RANK, TRANSREG, MODEL
[質問]ある変数について順位付けを行なうとき、度数変数を考慮に入れた上で順位を与えることはできますか。
[回答]順位付けを行なう場合、通常はRANKプロシジャが利用されますが、FREQステートメントがサポートされていないため、こ の質問のケースには対応できません。
このような場合、TRANSREGプロシジャを使用して順位付けを行なうことができます。MODELステートメントで変数変換方法RANKを使用し、同時にFREQステートメントで度数を表す変数を指定してください。 /* サンプルデータの作成 */ DATA test; INPUT y @@; freq=1+INT(RANUNI(123)*10); x=RANUNI(123)*10; CARDS; 1 5 3 3 1 ; RUN; /* TRANSREGプロシジャ */ PROC TRANSREG DATA=test DESIGN; MODEL RANK(y x/NAME=(rank_y rank_x)); OUTPUT OUT=out(DROP=Intercept _name_ _type_); FREQ freq; ID y x; RUN; /* 出力されたSASデータセットの確認 */ PROC PRINT DATA=out; RUN; |