stata - Twoway estpost tabstat-esttab:保留变量标签
问题描述
我想按原产地描述汽车的特征,并将结果检索为乳胶表:
sysuse auto
estpost tabstat price trunk, by(foreign) statistics(mean sd) columns(statistics) listwise nototal
esttab using test.txt, main(mean) aux(sd)
在 estpost 之后,我已经感觉到标签丢失了:它正确显示了值标签“国内”和“外国”,但只是将变量列为“价格”和“主干”而不是“价格”和“主干空间” ”。
我在网上看到过这个问题,但没有一个令人满意的解决方案。有人建议fsum
,但这并没有真正允许乳胶,也没有交叉制表(x 类别 y 的平均值)。我怎样才能解决这个问题?
我将接受的答案自动化如下:
local varlabels
foreach var in price trunk {
local varlabels `"`varlabels' `var' "`:variable label `var''""'
}
解决方案
该varlabels
选项允许您添加自定义标签。在estpost
命令之后,估计的名称如下所示:
. mat l e(mean)
e(mean)[1,4]
Domestic: Domestic: Foreign: Foreign:
price trunk price trunk
mean 6072.4231 14.75 6384.6818 11.409091
您可以通过添加一些代码将这些名称替换为变量标签:
sysuse auto
estpost tabstat price trunk, by(foreign) statistics(mean sd) columns(statistics) listwise nototal
foreach name in `:colfullnames e(mean)' {
foreach var in price trunk {
if strpos("`name'", "`var'") > 0 {
local varlabels `"`varlabels' `name' "`:variable label `var''""'
}
}
}
di `"`varlabels'"'
esttab, main(mean) aux(sd) varlabels(`varlabels')
结果:
. di `"`varlabels'"'
Domestic:price "Price" Domestic:trunk "Trunk space (cu. ft.)" Foreign:price "Price" Foreign:trunk "Trunk space (cu. ft.)"
. esttab, main(mean) aux(sd) varlabels(`varlabels')
----------------------------
(1)
----------------------------
Domestic
Price 6072.4
(3097.1)
Trunk.. ft.) 14.75
(4.306)
----------------------------
Foreign
Price 6384.7
(2621.9)
Trunk.. ft.) 11.41
(3.217)
----------------------------
N 74
----------------------------
mean coefficients; sd in parentheses
* p<0.05, ** p<0.01, *** p<0.001
向 esttab添加选项unstack
时,Domain 和 Foreign 用作列名,系数的名称只有 price 和 trunk,因此您可以执行以下操作:
esttab, main(mean) aux(sd) unstack varlabels(price "`:variable label price'" trunk "`:variable label trunk'")
推荐阅读
- flask - 在python中加载环境变量
- c# - C# 新手,如何更新数据表(或连接表)?
- javascript - Codwars:数组到单个值 +1
- django - self.scope['user'] 总是向我显示同一个用户,Django Channels
- sql - 在 SQL 查询中使用固定列表作为随机值
- python - 如何在不必键入每个参数的情况下使用具有多个参数的函数?
- python - 如何从 Python 的列中选择一定数量的字符?
- git - git rebase -i 中允许空提交的用例是什么
- flutter - 使用 agora 一次只能让 2 人启用视频通话?
- javascript - 如何禁用特定输入字段表单引导程序 5 验证脚本