which関数です。いや、関数が悪いのではなく使いどころをうまく作れない僕がヘボなんですが。
いつものごとく、cがつけば対文字型、nがつけば対数値型です。
例えば以下のようなデータセットがあったとします。
data Q1;
A='い';X='い';Y='ろ';Z='は';output;
A='B';X='A';Y='B';Z='C';output;
A='D';X='A';Y='B';Z='C';output;
run;
X,Y,Zの変数の値の中に、Aの変数の値と一致するものがあるか?
ある場合は最初に一致するのが何番目の変数であるかの位置を数字で返す関数です。
一致するものがない場合は0を返します。
例えば、以下
data A1;
set Q1;
array TARGET{*} $ X Y Z;
W=whichc(A,of TARGET(*));
run;
とすると結果は
です。
応用効きそうな匂いがかなりするんですが、実用例や工夫をご存じの方がいれば
ご教示ください。
0 件のコメント:
コメントを投稿