Stata结果输出-addest:自己添加统计量

发布时间:2021-02-06 阅读 1188

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

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

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

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

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

作者: 王文泽 (中山大学)
邮箱: wangwz5@sysu.edu.cn


目录


1. 简介

在执行完回归语句后,估计结果会保存在 Stata 内存中。用户可以通过输入 ereturn list 来查看这些已保存的结果,并可以在随后进行引用分析,例如,用户可以输入 display e(N) 来获取样本大小。

当然,许多由 Stata 官方或用户提供的 post-estimation 命令也都依赖于 ereturn list 显示的保存在内存中的内容,例如 Stata 中功能强大的 marginsmarginsplot、以及 estimates table 等命令。

其中,estimates table 命令因其能够并排显示几个模型的结果而十分常用。类似的命令还有 esttabxml_taboutreg、以及 outreg2 等。

在有些时候,用户可能希望在使用 post-estimation 命令时,保留估计模型的其它某些特性,而不是仅输出特定部分。addest 命令出现为解决上述问题,提供了可行的办法。

addest 命令以 Stata 中的常用命令 ereturn 为基础,在执行回归语句后,用户可通过 addest 命令将一些选项添加到已有存储项中,进一步丰富了 ereturn 中存储内容。在此基础上,通过 esttab 等命令,可以将方便快速的将新增选项输出。

2. addest 命令

2.1 addest 命令安装

*findit addest
net install addest, replace

2.2 addest 语法介绍

addest基础语法结构如下:

 addest [ , name(charstring) value(numeric value) bvector(vector name)
          vcematrix(matrix name) rename augbvector(number)
          augvcematrix(number) augcoefname(string) augeqname(string)
          textname(string) textstring(string) matname(ematrix_name)
          matrix(existing_matrix) findomitted buildfvinfo post repost *
        ]
  • name(charstring) value(numeric value):这两个选项必须同时设定。name 定义要添加到 ereturn 存储结果中的标量名称,value 则为对应的数值;
  • bvector(vector name) vceatrix(matrix name):这两个选项也必须同时设定。它们使用户能够替换估计系数的向量及其方差协方差矩阵。新的系数向量和方差协方差矩阵必须与目前在 ereturn 存储空间中的矩阵具有相同的行数和列数;
  • rename:这个选项只允许与 bvector(vector name) vceatrix(matrix name) 语法一同进行使用;
  • augbvector(number) augvceatrix(number) augcoefname(string) [ augeqname(string) ]:这四个选项是同一个组合,其中前三个选项需要同时进行设定。最后的第四个选项指定了添加系数估计的方程名称;
  • textname(string_with_no_blanks) textstring(string_with_no_blanks):这两个选项必须同时进行设定的,它们可以用于在 ereturn 的结果中添加任意字符串;
  • matname(ematrix_name) matrix(existing_matrix):这两个选项是必须同时进行设定。它们先将之前创建命名为 existing_matrix 的 Stata 矩阵加载进入 ereturn 的存储空间中,并更改为名为 ematrix_name 的矩阵,其中 ematrix_name 中不能包含空格或特殊字符。如果用户在设定使用了一个已经存在于 ereturn 空间中的名称,那个名称将被覆盖;
  • postrepost:当用户更改或更新 ereturn 存储空间中的估计结果时,addest 命令默认设定为 repost 选项。当用户更改或更新涉及到ereturn存储空间的其他内容时,addest命令默认设定为post选项。同时用户也可以通过直接输入postrepost指令来覆盖这些默认选项;
  • findomitted:通过 ereturn postereturn repost 来指定。将省略运算符 o. 添加到列表中 e(V) 的零值对角线元素对应的变量中,此选项的设定会同样传递给 ereturn repost
  • buildfvinfo:通过 ereturn postereturn repost 来指定,并计算用于测定可估计函数的 H 矩阵,该矩阵将会用于一些 post-estimation 命令,例如:contrastmarginspwcompare。此选项的设定会同样传递给 ereturn repost
  • *(other options):任何其他选项的设定都会被传递到 ereturn postereturn repost

3. 实操范例

在本部分,我们以「nlsw88.dta」数据为例,来演示说明 addest 命令的用法。具体来看,我们进行了两组回归:第一组是根据种族类别进行分组回归,以检验工作经历是否在两组中存在显著差别,并将系数差异检验结果添加到最后回归报告中;第二组是在第一组回归基础上,增加行业固定效应,并在报告中 “Industry = Yes” 的形式汇报。

具体 Stata 代码和结果如下:

sysuse nlsw88.dta, clear

global xx "ttl_exp married south hours tenure age"

*分组差异检验

reg wage $xx if race==1 
est store m1
reg wage $xx if race==2 
est store m2

suest m1 m2        
test [m1_mean]ttl_exp = [m2_mean]ttl_exp //系数差异检验
local chi2 = `r(chi2)'
local chi2_p = `r(p)'

reg wage $xx if race==1 
addest, name("chi2") value(`chi2')  //将系数差异检验结果添加到回归结果中
addest, name("chi2_p") value(`chi2_p')
est store m3

reg wage $xx if race==2
addest, name("chi2") value(`chi2')
addest, name("chi2_p") value(`chi2_p')
est store m4

*控制行业固定效应

reg wage $xx i.industry if race==1 
addest, textn("Industry") texts("Yes") //textname,简称 textn;textstring,简称 texts
est store m5
reg wage $xx i.industry if race==2 
addest, textn("Industry") texts("Yes")
est store m6	

esttab m3 m4 m5 m6, b(%6.3f) nogap compress      ///
  star(* 0.1 ** 0.05 *** 0.01) drop(*.industry)  ///
  ar2 scalar(N Industry chi2 chi2_p)
--------------------------------------------------------------
                 (1)          (2)          (3)          (4)   
                wage         wage         wage         wage   
--------------------------------------------------------------
ttl_exp        0.291***     0.288***     0.251***     0.271***
              (7.62)       (5.18)       (6.49)       (4.82)   
married       -0.641**      0.176       -0.737**      0.082   
             (-2.03)       (0.44)      (-2.31)       (0.21)   
south         -0.893***    -2.307***    -0.814***    -2.038***
             (-2.97)      (-5.58)      (-2.72)      (-4.92)   
hours          0.056***     0.045*       0.051***     0.036   
              (4.25)       (1.72)       (3.81)       (1.35)   
tenure         0.031        0.037        0.025       -0.003   
              (0.98)       (0.87)       (0.76)      (-0.08)   
age           -0.084*      -0.254***    -0.073       -0.216***
             (-1.82)      (-3.64)      (-1.58)      (-3.12)   
_cons          6.284***    12.478***     5.576**      9.490** 
              (3.27)       (4.34)       (2.22)       (2.53)   
--------------------------------------------------------------
N               1625          576         1615          572   
adj. R-sq      0.091        0.134        0.112        0.166   
Industry                                   Yes          Yes   
chi2           0.002        0.002                             
chi2_p         0.961        0.961                             
--------------------------------------------------------------
t statistics in parentheses
* p<0.1, ** p<0.05, *** p<0.01

4. 相关推文

Note:产生如下推文列表的命令为:
lianxh esttab 行业虚拟变量 suest 暂元 outreg2 四表 结果输出
安装最新版 lianxh 命令:
ssc install lianxh, replace

相关课程

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

免费公开课:


课程一览

支持回看

专题 嘉宾 直播/回看视频
最新专题 文本分析、机器学习、效率专题、生存分析等
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2小时]

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


关于我们

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

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

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

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

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

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