Stata结果输出:logout、esttab、logout2



背景

在实证研究中,将实证结果标准地展示在论文中是必不可少的过程。

使用软件:

Stata16 MP

目录

  • 1.统计表格与矩阵的输出
    1.1 tabstat计算基本统计量
    1.2 logout输出基本统计量
    1.3 logout输出相关系数矩阵
  • 2.回归结果输出
    2.1 esttab 呈现回归结果
    2.2 logout2呈现回归结果
  • 3 最后

1.统计表格与矩阵的输出

  • 使用命令:logouttabstat
  • logout的基本使用格式:
logout,save(文件名) word(or excel) [options]:  ///
       输出表格或者矩阵的命令
1.1 tabstat输出基本统计量
  • tabstat可以输出变量的相关基本统计量
sysuse auto,clear   //导入数据
tabstat price wei len mpg rep78, ///
stats(mean sd min p50 max) c(s) f(%6.2f)

在上述命令中,stats选项中分别表示输出变量的均值、标准差、最小值、中位数以及最大值,c(s)表示表格以列的形式展示(一般论文中的表格是这种形式),f(%6.2f)指定输出数据的格式(保留小数点后两位)。

1.2 logout将上述基本统计量表格输出至Word/EXCEL
*输出至word
logout ,save(table) word replace:  ///
           tabstat  price wei len mpg rep78, ///
           stats(mean sd min p50 max) c(s) f(%6.2f)
*输出至excel
logout ,save(table) excel replace:  ///
           tabstat  price wei len mpg rep78, ///
           stats(mean sd min p50 max) c(s) f(%6.2f)
1.3logout输出相关系数矩阵
mat A = I(0)
mat list a 
logout,save(matrix) word replace: ///
          pwcorr price  wei len mpg rep78

2 回归结果的输出

使用命令:esttab ,outreg2,reg



2.1 esttab 呈现回归结果

esttab基本使用方式:

esttab m1 m2 m3 using filename.csv, +选项...

每次回归后需要使用est sto将结果暂时存储在自己命名的元中

est sto + name

最后再使用esttab命令输出结果

sysuse auto,clear 
reg price wei,r
 est sto m1
reg price wei len,r
 est sto m2
reg price wei len foreign,r
 est sto m3 
esttab m1 m2 m3 using out.csv,replace ///
          scalars(r2_a N F)  nogap brackets b(%6.3f) compress ///
          star(* 0.1 ** 0.05 *** 0.01)

选项中,scalars(r2_a N F)表示在表中展示调整后的iostata命令参数详解 tabstat命令怎么用_iostata命令参数详解、样本量以及F统计量,nogap表示去除变量间的空行,brackets表示系数下方统计量用方括号,compress表示使表格更加紧凑,star(* 0.1 ** 0.05 *** 0.01)表示用*标记系数对应的显著性水平。

2.2 logout2呈现回归结果

logout2更加专业的输出工具

基本使用形式:
logout2 [m1 m2 m3] using filename , 
    word/excel replace +[other options]

下面展示实例

sysuse nlsw88,clear 
tab race,gen(d_race)
 drop d_race1
tab occu,gen(d_occu)
 drop d_occu1         //分别生产人种、职业虚拟变量
reg wage hours ttl_exp married
  est sto m1 
reg wage hours ttl_exp married d_race* 
  est sto m2 
reg wage hours ttl_exp married d_race* d_occu*
  est sto m3 

outreg2 [m1 m2 m3] using out1,replace excel      ///
  drop(d_occu*) sortvar(married hours)           ///
  tdec(2) rdec(3) adjr2 e(F) tstat               ///
  nonote                                         ///
  addnote("注:(1)。。。                        ///
                         (2)。。。")

上述命令中,excel表示输出excel文件,drop(d_occu*)表示不再表中展示职业虚拟变量的回归结果(太多了),sortvar可以调整回归表中变量的顺序,tdecrdec分别表示设定iostata命令参数详解 tabstat命令怎么用_git_02统计量与iostata命令参数详解 tabstat命令怎么用_iostata命令参数详解保留的小数位数,adjr2,e(F)分别表示表中展示调整后的iostata命令参数详解 tabstat命令怎么用_iostata命令参数详解iostata命令参数详解 tabstat命令怎么用_iostata命令参数详解_05统计量,tstat表示估计系数下方展示 iostata命令参数详解 tabstat命令怎么用_git_02 统计量,相应的若改为pvalue可以呈现显著性水平;nonote表示不展示默认的英文注释,addnote可以自己加入自己的回归结果注释。



  • 同时,outreg2还可以通过append选项继续追加回归结果
  • 下面将logit回归结果加入上文out1估计结果中:
logit union wage married wage d_race* d_occu*
 est sto logit 
outreg2 [logit] using out1,excel append

3 最后

更多细节可参考连玉军老师推文以及课程 或者获取stata帮助文件。