Stata 中的 forvalues 和 xtile
forvalues and xtile in Stata
最后两行是做什么的?据我了解,这些行循环遍历列表 h_nwave
并计算加权分位数,如果 syear2digit == 'nwave'
,即每年计算 5 个分位数。但是我不确定我的理解是否正确。这也等同于使用 group()
函数吗?
h_nwave "91 92 93 94 95 96 97 98 99 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15"
generate quantile_ip = .
forvalues number = 1(1)15 {
local nwave : word `number' of `h_nwave'
xtile quantile_ip_`nwave' = a_ip if syear2digit == `nwave' [ w = weight ], nq(5)
replace quantile_ip = quantile_ip_`nwave' if syear2digit == `nwave'
}
我尝试使用 forloop
、mutate
、xtile
(需要 statar 包)和 case_when
将其转换为 R。但是,到目前为止,我找不到合适的方法来获得类似的结果。
此代码没有来源或上下文。
详细信息:第一个命令被截断了,大概应该是
local h_nwave 91 92 93 94 95 96 97 98 99 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15
详细信息:第一个列表包含 25 个值,大概对应于 1991 年到 2015 年。但是第二个列表包含 15 个值,因此我们只查看 91 到 05。
主要思想:xtile
变量 a_ip
上的分箱到五分位数分箱,带有权重。因此最低的 20% 的观察值(考虑到权重)应该在 bin 1 中,依此类推。在实践中,必须将具有相同值的观察值分配给相同的 bin,因此不能保证 20-20-20-20-20 次拆分,除了样本大小是否为 5 的倍数的小字之外。所以,结果分配给 bins 1 到 5,not 五分位数本身,或任何其他类型的分位数。
这是针对每个调查波单独完成的。
xtile
命令在 https://www.stata.com/manuals/dpctile.pdf 为所有人记录,无论个人或工作场所对 Stata 的访问如何。
在 R 中,您很可能能够一次为所有调查年份生成五分位数分箱。我不知道该怎么做。
换句话说,循环的出现是因为 xtile
在一个命令调用中对单独的子集不起作用。社区提供的 Stata 命令允许这样做。这种话题在Statalist上讨论得很多。
最后两行是做什么的?据我了解,这些行循环遍历列表 h_nwave
并计算加权分位数,如果 syear2digit == 'nwave'
,即每年计算 5 个分位数。但是我不确定我的理解是否正确。这也等同于使用 group()
函数吗?
h_nwave "91 92 93 94 95 96 97 98 99 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15"
generate quantile_ip = .
forvalues number = 1(1)15 {
local nwave : word `number' of `h_nwave'
xtile quantile_ip_`nwave' = a_ip if syear2digit == `nwave' [ w = weight ], nq(5)
replace quantile_ip = quantile_ip_`nwave' if syear2digit == `nwave'
}
我尝试使用 forloop
、mutate
、xtile
(需要 statar 包)和 case_when
将其转换为 R。但是,到目前为止,我找不到合适的方法来获得类似的结果。
此代码没有来源或上下文。
详细信息:第一个命令被截断了,大概应该是
local h_nwave 91 92 93 94 95 96 97 98 99 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15
详细信息:第一个列表包含 25 个值,大概对应于 1991 年到 2015 年。但是第二个列表包含 15 个值,因此我们只查看 91 到 05。
主要思想:xtile
变量 a_ip
上的分箱到五分位数分箱,带有权重。因此最低的 20% 的观察值(考虑到权重)应该在 bin 1 中,依此类推。在实践中,必须将具有相同值的观察值分配给相同的 bin,因此不能保证 20-20-20-20-20 次拆分,除了样本大小是否为 5 的倍数的小字之外。所以,结果分配给 bins 1 到 5,not 五分位数本身,或任何其他类型的分位数。
这是针对每个调查波单独完成的。
xtile
命令在 https://www.stata.com/manuals/dpctile.pdf 为所有人记录,无论个人或工作场所对 Stata 的访问如何。
在 R 中,您很可能能够一次为所有调查年份生成五分位数分箱。我不知道该怎么做。
换句话说,循环的出现是因为 xtile
在一个命令调用中对单独的子集不起作用。社区提供的 Stata 命令允许这样做。这种话题在Statalist上讨论得很多。