Stata结果输出:两阶段回归的结果输出

发布时间:2020-10-08 阅读 38

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

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

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

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

作者:唐继凤(中山大学)
邮箱:18177471572@163.com


目录


1. 引言

OLS 能够成立的最重要条件是解释变量与扰动项不相关。否则,OLS 估计量将是不一致的,即无论样本量多大,OLS 估计量也不会收敛到真实的总体参数。因此,在一篇实证论文中,工具变量法是解决内生性问题的重要方法之一。那么我们将如何展示如此重要的回归结果呢?展示回归结果的命令有哪些,它们各自的优缺点又是什么呢?本文将以实例介绍 ivregress 两阶段回归中 esttab, outreg2, asdoc 三种输出命令的优劣之处。

2. 输出命令介绍

2.1 esttab 命令简介

新的 esttab 命令是 estout 的包装器。它的语法比 estout 简单得多,而且默认情况下,它会在 Stata 结果窗口中良好地显示回归结果表格。esttab 不仅仅是 estout 的简化版本。 esttab 提供了完整的 estout 功能,同时也扩展了功能。例如,esttab 增加了对 Word 多文本格式 (RTF) 和 Excel 逗号分隔值 (CSV) 文件的支持,并改进了 LATEX 和 HTML 的功能。

2.1.1 esttab 基本用法

esttab 命令的基本用法如下:

esttab [namelist] [using filename]  [, options estout_ options]

其中,

  • esttab 为命令主体,不可省略;
  • namelist 是存储的估计集的名称列表。namelist 可能是 *,用于将所有存储的估计集制成表格。如果省略了namelist,则 esttab 将列出当前运行结果,如果有,则列出 eststo 存储的估计集。
  • 指定 using 会将回归结果写到磁盘上的文件中,而不是显示在 Stata 的结果窗口中。

各类应用范例,请参考 Introductory examples for esttab

2.1.3 esttab 两阶段回归结果输出

本文实例: 使用系统自带的 auto.dta 数据,运行以下命令:

sysuse "auto", clear

ivregress 2sls mpg weight (length=displacement)
est store second

reg length displacement weight  // 自己做一个第一阶段的回归
est store first                 // Note: 务必要加上所有外生变量

*-输出结果
* Note: Word  文档,用 .rtf 作为后缀
*       Excel 文档,用 .csv 作为后缀
local s "using Table1.rtf"  //选中此行可以输出到Word/Excel文档
local m "first second"
esttab `m' `s', mtitle(`m') nogap compress replace   ///
         b(%6.3f) s(N r2_a) drop(`drop')   ///
         star(* 0.1 ** 0.05 *** 0.01)      ///
         addnotes("*** 1% ** 5% * 10%")

保存到 Table1.doc 文档中的两阶段回归结果如下图:

esttab 两阶段回归结果输出
esttab 两阶段回归结果输出

根据 esttab 的基本用法,若要输出两阶段的结果,需要对每一段运行的结果进行储存,在输出结果时再调用储存结果。如果只输出第二阶段的结果,可直接进行一下命令:

sysuse auto
ivregress 2sls mpg weight (length=displacement),first
esttab using 1.doc

2.2 outreg2 简介

outreg2 提供了一种快速而简单的方法来生成一个说明性的回归输出表。回归结果是零碎产生的,如果不进行某种类型的重新排列,就很难进行比较。outreg2 自动地将连续的回归输出以垂直格式连接起来。结果表以 ASCII 格式保存到磁盘,其他程序可以读取。outreg2 可以报告任何回归输出,前提是它符合 ereturn 列表的常规约定。

2.2.1 outreg2 基本用法

测试标题

 outreg2 [varlist] [estlist] using filename [, options] [: command]
  • 其中,outreg2 为命令主体,不可省略;
  • 其中,varilist 是数值型变量列表,可以选择要输出的变量名称;
  • estlist 为保存的回归结果集。

2.2.2 outreg2 两阶段回归结果输出

sysuse auto
ivregress2 2sls mpg weight (length=displacement),first
est restore first
outreg2 using xxx.doc,cttop(first)  tstat bdec(3) tdec(2) replace

ivregress2 2sls mpg weight (length=displacement), first
outreg2 using xxx.doc,cttop(two) tstat bdec(3) tdec(2)
outreg2 两阶段回归
outreg2 两阶段回归
  • 两阶段回归输出时,若只展示第二阶段回归,则直接利用第二阶段回归输出代码即可。如需展示第一阶段回归结果,则可以利用实例中所示方法,利用命令先将第一阶段回归结果保存输出,再输出第二阶段回归结果。实例中去掉了第二阶段输出时的 replace 这样就可以将两阶段结果输出在一张表上。
  • 按照 outreg2 命令输出的表格内相关系数下括号内数字为标准误,因此我们一般利用命令 tstat 将其更改为 t 值。
  • outreg2 命令输出时默认相关系数和 t 值都保留 3 位有效数字,而一般期刊要求相关系数保留 3 位有效数字,t 值保留 2 位有效数字,因此我们利用 bdec(3) 和 tdec(2) 命令限定。(注:此部分感谢团队小伙伴热心提供)

连享会计量方法专题……

2.3 asdoc 简介

asdoc 是结果输出的又一利器,它的最大优点是:各种命令前加 asdoc就能轻轻松松输出结果。用法详细介绍参考 asdoc:Stata 结果输出又一利器!

2.3.2 asdoc 两阶段回归结果输出

asdoc 可以创建三种类型的回归表。第一种类型是详细表,它将 Stata 的回归输出中的关键统计数据与一些附加的统计数据(如因变量的均值和标准差等)组合在一起,第一种表是 asdoc 输出的默认选项。第二种表是嵌套表,它在一个表中嵌套多个回归。第三种表是宽表,它以宽的或行格式报告回归内容,宽表提供的选项超过 10 个,使用者可以根据需要添加选项。本文选用第一种表格形式,asdoc 直接加在两阶段回归前,回归结果自动保存至 Myfile.doc

sysuse auto
asdoc ivregress2 2sls mpg weight (length=displacement),first. sysuse auto
(1978 Automobile Data)


. asdoc ivregress2 2sls mpg weight (length=displacement),first

First-stage regressions
-----------------------

                                                Number of obs     =         74
                                                F(   2,     71)   =     304.50
                                                Prob > F          =     0.0000
                                                R-squared         =     0.8956
                                                Adj R-squared     =     0.8926
                                                Root MSE          =     7.2955

------------------------------------------------------------------------------
      length |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
      weight |   .0285754   .0024618    11.61   0.000     .0236666    .0334842
displacement |  -.0139257   .0208339    -0.67   0.506    -.0554673    .0276159
       _cons |   104.3976   4.264293    24.48   0.000     95.89487    112.9004
------------------------------------------------------------------------------


Instrumental variables (2SLS) regression               Number of obs =      74
                                                       Wald chi2(2)  =  101.01
                                                       Prob > chi2   =  0.0000
                                                       R-squared     =  0.5217
                                                       Root MSE      =  3.9742

------------------------------------------------------------------------------
         mpg |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
      length |   -.379211   .8149763    -0.47   0.642    -1.976535    1.218113
      weight |    .004269   .0220963     0.19   0.847    -.0390389    .0475769
       _cons |   79.67325   86.48626     0.92   0.357     -89.8367    249.1832
------------------------------------------------------------------------------
Instrumented:  length
Instruments:   weight displacement
Click to Open File:  Myfile.doc

保存到 Myfile.doc中的两阶段回归结果与 Stata 窗口显示的回归结果一致,读者可根据需要添加 asdoc 选项来调整输出结果格式,具体选项可查看 Satahelp功能。

3. 总结

  • 从回归结果输出的角度,asdoc 的效果最差,不能对变量进行排序,表格布局与一般的文献不同,且不能用命令调整。
  • 在两阶段回归输出结果应用中,outreg2 还将报告常见的统计信息,如显著性级别的标准错误(1%、5%和 10%)、t 统计信息、p 值、观察次数、r 平方数和面板估计中的组数。因此 outreg2 使用率比较高,有助于将回归输出转换为适合包含在学术出版物中的标准格式。
  • 在两阶段回归中,ivregress2 直接进行两阶段的回归,而 esttab 只能输出保存的模型或输出当前运行的结果,要只输出第一阶段的结果时不如 outreg2 方面。

4. 参考资料

  • Introductory examples for esttab
  • asdoc:Stata 结果输出又一利器!
  • Ben Jann, ETH Zurich. Making regression tables simplified. The Stata Journal (2007) 7, Number 2, pp. 227–244
  • Christopher F. Baum, Mark E. Schaffer. Enhanced routines for instrumental variables/generalized method of moments estimation and testing. The Stata Journal (2007) 7, Number 4, pp. 465–506
  • Ben Jann, J. Scott Long. Tabulating SPost results using estout and esttab. The Stata Journal (2010)10, Number 1, pp. 46–60
  • 陈强. 高级计量经济学及 stata 应用 [M]. 高等教育出版社, 2014.

相关课程

连享会-直播课 上线了!
http://lianxh.duanshu.com

免费公开课:


课程一览

支持回看,所有课程可以随时购买观看。

专题 嘉宾 直播/回看视频
最新专题 DSGE, 因果推断, 空间计量等
Stata 数据清洗 游万海 直播, 2 小时,已上线
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2 小时]

Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。


关于我们

  • Stata 连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。直播间 有很多视频课程,可以随时观看。
  • 连享会-主页知乎专栏,300+ 推文,实证分析不再抓狂。
  • 公众号推文分类: 计量专题 | 分类推文 | 资源工具。推文分成 内生性 | 空间计量 | 时序面板 | 结果输出 | 交乘调节 五类,主流方法介绍一目了然:DID, RDD, IV, GMM, FE, Probit 等。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法

连享会主页  lianxh.cn
连享会主页 lianxh.cn

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

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

✏ 连享会学习群-常见问题解答汇总:
https://gitee.com/arlionn/WD