按照状态排序,然后按照Stata中的城镇人口排序,我想创建一个变量来排序从最大到最小排序的值。我想给人口最多的城镇分配一个1,并继续列出价值最小的城镇。我想对来自30个不同州的城镇重复这项练习。
由于城镇数量不同,我不能仅为每个州创建一个从1到100的变量。我已经尝试了egen
命令的各种版本,但每次我最后都输入了很多数字,我非常确定我应该能够用一两行代码来完成。有人有任何提示吗?
答案 0 :(得分:2)
clear
input str2 state str7 city pop000
AL ALCity1 128
AL ALCity2 391
AL ALCity3 997
GA GACity1 208
GA GACity2 1090
FL FLCity1 534
FL FLCity2 302
FL FLCity3 90
FL FLCity4 119
end
bysort state (pop000): egen poprank = rank(pop000), field
sort state poprank
list, noobs sepby(state)