Hi,
To explain what I want, please let me show the simple code:
proc sort data=work.city;
by descending gdp;
run;
Then I want to create a variable in the data work.city, which indicates the group that the case belongs to based on its gdp level. Group 1 has the largest gdp, and group 10 has the lowest gdp. Each group has equal number of cases.
How can do it?
Cheers.
Ruth.
Couldn't you just use proc rank .. the data doesn't even have to be sorted. Just specify the number of groups you want. e.g.,
data city;
input city gdp;
cards;
1 10
2 9
3 8
4 7
5 6
6 5
7 4
8 3
9 2
10 12
11 13
12 14
;
proc rank data=city groups=4 out=want;
var gdp;
ranks gdprank;
run;
Couldn't you just use proc rank .. the data doesn't even have to be sorted. Just specify the number of groups you want. e.g.,
data city;
input city gdp;
cards;
1 10
2 9
3 8
4 7
5 6
6 5
7 4
8 3
9 2
10 12
11 13
12 14
;
proc rank data=city groups=4 out=want;
var gdp;
ranks gdprank;
run;
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.