forest-森林图:分组回归系数可视化

发布时间:2021-06-08 阅读 5578

Stata连享会   主页 || 视频 || 推文 || 知乎

温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。

New! lianxh 命令发布了:
随时搜索推文、Stata 资源。安装命令如下:
. ssc install lianxh
详情参见帮助文件 (有惊喜):
. help lianxh

课程详情 https://gitee.com/lianxh/Course

课程主页 https://gitee.com/lianxh/Course

⛳ Stata 系列推文:

PDF下载 - 推文合集

作者: 袁子晴 (香港大学)
邮箱: yzq0612@foxmail.com


目录


1. 问题背景

绘制森林图可以帮我们直观地展现不同系数的大小和显著性,便于我们比较不同系数的相对大小关系

例如下图研究中国新型农村社会保险覆盖对于养老金领取的影响,通过森林图我们可以直观地看出政策影响在不同群体之间的差异。

Source: Huang, W., & Zhang, C. (2021). The Power of Social Pensions: Evidence from China’s New Rural Pension Scheme. American Economic Journal: Applied Economics, 13(2), 179–205. Figure3. -PDF1-

在做图的过程中其实是将回归结果提取出来存储在这样一个新的数据集内,然后利用 twoway 绘图命令中的 scatterrcap 分别绘制圆点和置信区间,从而将这些系数可视化呈现在一张图中。

coef se sample n1 up low
. . . -1 . .
0.2642179 0.0428519 Men -2 0.3482076 0.1802283
0.2263034 0.0385388 Women -3 0.3018395 0.1507672
. . . -4 . .
0.2501876 0.0456996 lliterate -5 0.3397587 0.1606165
0.2317064 0.0415204 Primary school -6 0.3130863 0.1503265
0.2608171 0.0408371 Junior high + -7 0.3408578 0.1807763
. . . -8 . .
0.4028418 0.0611413 Lower -9 0.5226789 0.2830048
0.1134644 0.044649 Higher -10 0.2009765 0.0259522
. . . -11 . .
* Figure 3-(b): By gender, education and initial income level
*-------------------------------------Figure3b-----------------begin------------
#delimit ;
twoway (scatter n1 coef , 
       ytit( "Effects of NRPS coverage on Pension Reciepts")
       ylabel(-11(11)0 0 " " -11 " ") 
       mlabel(sample)
       mlabp(12) 
       xlabel(-0.1(0.1).6, grid) 
       xline(0, lp(dash)))
	   
       (rcap up low n1 , 
	   lp(dash)  
       xscale(alt) 
       xtit("Coef. and 95% CIs in different samples") 
       legend(label(1 "Coef.") label(2 "95% CI") 
              col(1) ring(0) pos(1) size(small))  
       hori 
       text(-1 -0.1 "Panel A: By Gender",place(e)) 
       text(-4 -0.1 "Panel B: By Education level",place(e)) 
       text(-8 -0.1 "Panel C: By County Income level in 2005",place(e)))
;
#delimit cr
*-------------------------------------Figure3b-----------------over------------
gr export "$outpath/figure3_b.eps",replace 
restore     /*-----------0ver----------*/

上述例子为我们展现了森林图的优势,在研究政策处理效应时,我们更关心政策的实施对于经济社会的哪些维度产生了显著的影响,哪些并无显著影响,这种情况下我们也可以使用森林图进行可视化。

但是如果我们想要将某一个关键的解释变量 X 对于**一组被解释变量 Y **的影响同时呈现在一张森林图中,可能遇到这样的问题:当被解释变量不同时,同一个核心变量对其产生的影响系数的大小该如何比较呢?

本推文介绍了学者 Benjamin Daniels 编写的 Stata 外部命令 forest 可以通过标准化和校准多个被解释变量 Y 来绘制这种情况下的森林图。

2. Stata 实例

2.1 Stata 外部命令介绍

首先通过 ssc install forest 来安装外部命令 forest ,使用 forest 绘制森林图时,其命令结构如下:

forest estimator (depvar family) [(depvar family)] [...]
   [weight] [if] [in]
  , treatment(varname) [controls(varlist)] [estimation_opts]
   [or|d] [bonferroni|bh] [critical(value)]
   [sort(local|global)] [graphopts(twoway_options)]

命令运行所需项:

  • estimator :指定回归命令,如regress
  • (depvar family):指定回归方程等号左边的一组被解释变量Y,注意需要加括号;
  • treatment() :列出关键的解释变量X,可简写为t(),以及任何在回归命令和被解释变量之后、控制变量之前的选项,如 ivregress 2sls

模型其他选项:

  • controls() :指定控制变量,可简写为c(), 其中使用 @ 指代当前被解释变量,例如 controls(L.@) 来表示被解释变量的一阶滞后项;
  • critical():指定显著性水平对应的 P 值,默认为 0.05;
  • ordor 选项指以 odds ratios 的形式输出效应值 (指数化回归系数),d 选项指以 Cohen's d 的形式输出效应值 (将被解释变量标准化),其中效应值(effect size) 是指在政策处理后,处理组与控制组之间标准化后的平均差异程度;
  • Bonferroni:在多重比较中,计算置信区间时采用 Bonferroni 矫正法,通过对 p 值的阈值进行校正来实现消除假阳性结果;
  • bh : 在多重比较中,采用 Benjamini-Hochberg 来校正显著性。

画图选项:

  • sort(type) :将回归结果从小到大进行排序,local 选项在每组被解释变量集内进行排序;global 选项则对全局所有指定的回归结果进行排序;
  • graphopts():绘图附加命令。

2.2 Stata 实例

利用 Stata 自带的 auto 数据集演示 forest 的用法,首先 forest 命令后紧跟的是回归命令 reg,然后我们可以看到括号里面两组被解释变量集:

  • 第一组被解释变量包括 pricempgdisplacement
  • 第二组被解释变量包括 rep78turnweight
  • 关键解释变量是 foreign (国产或进口车);
  • 选项 d 代表将被解释变量标准化,bh 代表采用 Benjamini-Hochberg 法来校正显著性。
sysuse auto.dta , clear
forest reg ///
  (price mpg displacement) ///
  (rep78 turn weight) ///
  , t(foreign) d bh

从图中我们可以直观地看出,关键解释变量是 foreign (国产或进口车)对于两组被解释变量的影响,红色的圆点代表在统计上显著,横线代表了 95% 的置信区间,我们可以看到进口车的 DisplacementTurn CircleWeight 这三项指标都显著地低于国产车,而进口车的 MileageRepair Record 1978 都显著地高于国产车,此外进口车和国产车在价格上并没有显著的差异 。

参考文献

相关课程

免费公开课

最新课程-直播课

专题 嘉宾 直播/回看视频
最新专题 文本分析、机器学习、效率专题、生存分析等
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2小时]
  • Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。

课程主页

课程主页

关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 连享会-主页知乎专栏,400+ 推文,实证分析不再抓狂。直播间 有很多视频课程,可以随时观看。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法

连享会小程序:扫一扫,看推文,看视频……

扫码加入连享会微信群,提问交流更方便

✏ 连享会-常见问题解答:
https://gitee.com/lianxh/Course/wikis

New! lianxh 命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh