data test;
input a b;
cards;
1 1
1 2
1 3
1 4
2 5
2 6
;
run;
proc sort data=test;
by a;
run;
data test1;
retain sum n;
set test;
by a;
if first.a then do;
sum=0;
n=0;
end;
else do;
sum+b;
n+1;
end;
output;
if last.a then do;
b=sum/n;
output;
end;
drop sum n;
run;