1

2 つの変数にID基づいて数値を割り当てるにはどうすればよいでしょうか。コードが複数の変数を処理できると便利です。私のデータは次のようになります。AB

A       B  ID
5000136 5 1
5000136 5 1
5000225 4 2
5000225 4 2
5000225 4 2
5000225 6 3
5000225 6 3
5000225 6 3
5000327 2 4
5000327 2 4
....

ID私が作りたい結果です。この質問が重複している場合は申し訳ありません。

4

2 に答える 2

4
data want;
set have;
by A B;
if first.B then id+1;
run;
于 2012-09-17T16:27:48.427 に答える
1

first.[var] 処理を使用したくない場合は、このメソッドも使用できます。

data test;
infile cards;
input a b;
retain id 0;
id = ifn(lag(b) ne b, id+1, id);
datalines;
5000136 5 
5000136 5 
5000225 4 
5000225 4 
5000225 4 
5000225 6 
5000225 6 
5000225 6 
5000327 2 
5000327 2 
;
run;

proc print; 
run;
于 2012-09-18T21:42:43.947 に答える