如何修改did_multiplegt_dyn默认基线为t=-1以匹配旧版did_multiplegt?
调整Stata did_multiplegt_dyn基准年为t=-1的方法
要让did_multiplegt_dyn的估计结果和事件研究图都以t=-1作为基准年,可从模型估计和绘图设置两方面操作:
一、模型估计阶段指定基准年
did_multiplegt_dyn支持直接指定相对年份的基准组,具体步骤:
- 先生成相对年份变量
rel_year(观测年份减去处理年份):
gen rel_year = year - treat_year
- 调用命令时,通过
i(rel_year, base(-1))将t=-1设为基准水平,示例命令:
did_multiplegt_dyn outcome_var i(rel_year, base(-1)) i(id) i(year), robust cluster(id)
若命令自带baseyear()这类基准年指定参数,也可直接添加baseyear(-1)替代上述设置,具体语法细节可通过help did_multiplegt_dyn确认。
二、事件研究图调整基准线与标签
如果命令默认绘图仍以t=0为基准,可手动提取估计结果后重新绘图:
- 先保存估计结果:
estimates store dyn_did_results
- 使用
coefplot绘制对齐t=-1的事件研究图:
coefplot dyn_did_results, keep(*.rel_year) vertical /// xlabel(-5 "-5" -4 "-4" -3 "-3" -2 "-2" -1 "-1" 0 "0" 1 "1" 2 "2" 3 "3") /// xline(-1, lcolor(red) lpattern(dash)) /// title("处理效应事件研究(基准年:t=-1)") /// ytitle("处理效应估计值") xtitle("相对处理年份")
上述命令会用红色虚线标记t=-1的基准位置,x轴标签也会清晰对应各相对年份。
内容的提问来源于stack exchange,提问作者user1288578
相关产品推荐
相关产品推荐

