proc format;
value range 1-10 = 'A'
11-20 = 'B'
21-30 = 'C'
others = 'D';
run;
data test;
do i = 1 to 15;
A = int(ranuni(123)*100);
b = int(ranuni(345)* 40);
b_range = b;
output;
end;
format b_range range.;
drop i;
run;
proc rank data=test out=ranked group = 4;
var a b;
ranks a_rank b_rank;
run;