如何在Stata中让平衡表显示标准误而非标准差?
解决Stata esttab显示标准差而非标准误的问题
你的问题核心在于两点:一是estpost summarize默认不会计算并存储标准误,二是esttab的cell()选项指定了显示标准差(sd)而非标准误(se)。
修改后的代码
global myvars MSBS male age officer Army Navy AirForce global mysplitvar FY1991 // 显式指定计算均值和标准误 ieststo group1_means: estpost summarize $myvars if $mysplitvar == 0, stats(mean se) ieststo group2_means: estpost summarize $myvars if $mysplitvar == 1, stats(mean se) iesttab group1_means group2_means using Table1_REPEX1.html, replace /// cell(mean(fmt(3)) se(fmt(3) par)) /// 替换sd为se,将标准误放在括号内 mtitle("Choice Cohort (FY1991)" "Choice Cohort (FY1992)") label collabels(none)
关键修改说明
- 在
estpost summarize后追加, stats(mean se):强制Stata计算并保存标准误(标准误=标准差/√样本量),默认的stats参数仅包含均值、标准差、极值和样本量,不包含标准误。 - 将
cell()中的sd(fmt(3) par)替换为se(fmt(3) par):让表格在均值的括号内显示标准误,替换原来的标准差。
如果需要同时保留标准差和标准误(例如格式为「均值(标准误) [标准差]」),可调整cell()选项为:
cell(mean(fmt(3)) se(fmt(3) par) sd(fmt(3) br))
其中br参数会用方括号包裹标准差。
内容的提问来源于stack exchange,提问作者Vee Ess
相关产品推荐
相关产品推荐

