如何调整Stata的coefplot以展示分类变量估计的真实系数?
Stata中展示分类变量真实系数的coefplot调整方法
当你用虚拟变量回归(ib4.xvar)后,coefplot默认展示的是虚拟变量相对于参照组的系数,而非各分类的真实均值(即参照组常数项+对应虚拟变量系数)。以下是两种可靠的解决方法:
方法1:使用margins + marginsplot(推荐)
这是Stata官方推荐的方式,直接计算每个分类的预测均值及标准误,自动生成符合需求的图形:
// 重新估计模型(若已eststo可跳过此步) reg dv2 ib4.xvar // 计算xvar各水平的边际预测值(即真实系数) margins xvar // 绘制带置信区间的系数图 marginsplot, scheme(s1color) vertical title("各分类的预测均值及95%置信区间")
margins xvar会自动计算每个分类的预测值:参照组D的预测值等于回归结果中的_cons,其他分类的预测值为_cons加上对应虚拟变量的系数,同时自动计算正确的标准误和置信区间。
方法2:手动用lincom构建结果集后用coefplot绘制
如果必须使用coefplot,可以通过lincom计算每个分类的真实系数及标准误,再合并绘图:
// 调用已保存的回归结果 estimates restore myest // 用lincom计算每个分类的真实系数并保存结果 lincom _cons, eststore(D) // 参照组D的真实系数 lincom _cons + xvar_A, eststore(A) lincom _cons + xvar_B, eststore(B) lincom _cons + xvar_C, eststore(C) lincom _cons + xvar_E, eststore(E) // 合并所有结果绘图 coefplot D A B C E, scheme(s1color) vertical title("各分类的真实系数及95%置信区间")
lincom会准确计算线性组合的系数、标准误和置信区间,确保图形中的统计量完全正确。
注意:不要使用
coefplot的transform选项调整系数,该选项仅修改系数值,不会自动计算线性组合的标准误,会导致置信区间错误。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

