我有收入变量的数据,有重量,我想按年计算5%的分位数。 有没有办法做到这一点?
对于体重,我可以使用常规xtile
:
xtile quan = salary [aw=weight], n(20)
多年来,我可以使用xtile
中的egenmore
:
egen quan = xtile(salary), by(year) nq(20)
但我怎么能一起做权重和一年呢?
答案 0 :(得分:2)
有一个weights()
选项,如help egenmore
中所述:
clear
set more off
sysuse auto
keep mpg foreign weight
// egenmore
egen mpg4 = xtile(mpg), by(foreign) nq(4) weights(weight)
// compare with xtile
xtile mpg4_1 = mpg [aweight=weight] if foreign, nq(4)
xtile mpg4_2= mpg [aweight=weight] if !foreign, nq(4)
egen mpg42 = rowtotal(mpg4_1 mpg4_2)
assert mpg4 == mpg42
sort foreign mpg weight
list, sepby(foreign)
在egen
xtile
功能的ado文件中,您可以查看权重的设置方式:
if "`weights'" ~= "" {
local weight "[aw = `weights']"
}
请参阅viewsource _gxtile.ado
。