在上一个question中,我得到了一个有效的解决方案,可以生成变量并同时对其进行排序:
sysuse auto, clear
generate random = runiform(), before(make)
如果使用egen
命令,则此解决方案似乎不起作用:
egen avgprice = mean(price), before(make)
option before() not allowed
r(198);
使用egen
时是否可以生成变量并同时对其进行排序?
答案 0 :(得分:0)
egen
命令没有类似于before()
的{{1}}选项的选项。
但是,您可以通过编写一个小程序来完成所需的工作:
generate
然后您可以执行以下操作:
program define egen2
unab allvars : *
gettoken firstvar : allvars
tempname var
gettoken firstarg 0 : 0, parse("=")
egen `var' `0'
generate `firstarg' = `var', before(`firstvar')
end