Stata:排序

  • 使用bysort,在分组操作的情况下还要根据额外的变量进行排序时,使用bysort groupvar (rankvar):正序排序
sysuse census, clear
*保留每个区域内人口最少的州,因此按每个区域内的人口排序:
byssort region (pop): keep if _n==1
*使用bysort不能直接按降序排序,解决办法:
gen gpop = -pop
byssort region (gpop): keep if _n==1  /*保留每个区域内人口最多的州*/
  • sortgsort在升序排序时起到相同作用,但是sort不能降序排序,gsort可在变量前面加-负号实现降序排序
  • 变更原有变量时,使用ereplace代替egen
*原来的方法:
sysuse auto2, clear
egen mpg2 = max(mpg)
drop mpg
rename mpg2 mpg
*更好的方法:
sysuse auto2, clear
ereplace mpg = max(mpg)

 

 

posted @ 2023-01-15 07:28  myrj  阅读(703)  评论(0编辑  收藏  举报