例如,当您在 Stata 中取变量的百分位数时。
*set directory
cd"C:\Etc\Etc Etc\"
*open data file
use "dataset.dta",clear
*get centiles
centile var1, centile(1,5(5)95,99)
有没有办法将生成的百分位表记录到 excel 中?百分位值存储在 r(c_#) 中,其中 # 表示您想要数据的百分位。但是我需要一个所有百分位值的向量,或多或少地出现在输出窗口中。
我尝试使用 foreach 循环将百分位数放入向量中,如下所示:
*Create column of centiles
foreach i in r(centiles) {
xx[1,`i']=r(c_`i')
}
没有成功。
谢谢
编辑:
从那以后,我发现这是可行的:
matrix X = 0,0
forvalues i=1/21 {
matrix X = `i',round(r(c_`i'),.001)\ X
}
唯一的不便是 1) 我必须在输出中包含第一行 0,0,然后我将删除它。2)在这种情况下,我有 21 个百分位数,但如果我想更改它,最好自动化百分位数,例如这样的:
forvalues i=1/r(n_cent) {
matrix X = `i',round(r(c_`i'),.001)\ X
}
但是“i=1/r(n_cent)”是无效的语法。任何关于我如何克服这两个不便的建议将不胜感激。
谢谢