data a;
input a b @@;
cards;
1 1
1 2
1 3
2 1
2 4
3 3
3 4
;
run;
proc sort data=a;
by a b;
run;
data b;
set a;
by a b;
retain c 0;
if first.a then c=1;
else c+1;
run;