十、工具变量法 stata 演示 (mac)

参考 陈强教授 《计量经济学与Stata应用》使用 grilic.dta 数据集 (陈强教授官网开源)

1.OLS回归

复制代码
reg lnw s expr tenure rns smsa,r
# r表示使用异方差强健的标准误

s 产生的效果太大了,遗漏变量iq

2.带上iq的OLS回归

复制代码
reg lnw iq s expr tenure rns smsa,r
# r表示使用异方差强健的标准误

还是有点大,存在内生性问题->使用IV

3.工具变量法 IV

如果你使用ivreghdfe命令则需要自己手动安装ivreghdfe

安装命令

cap ado uninstall reghdfe # 刚下载的stata可以不执行

cap ado uninstall ivreghdfe # 刚下载的stata可以不执行

net install ftools, from(/Applications/Stata/ivreghdfe安装包/ftools-master/src)

net install reghdfe, from(/Applications/Stata/ivreghdfe安装包/reghdfe-master/src)

net install ivreghdfe, from(/Applications/Stata/ivreghdfe安装包/ivreghdfe-master/src)

()中为你自己的文件路径,直到src

我是mac so / ; if windows \

补充: mac 一键复制绝对路径命令: option+command+c

参考资料:压缩包下载

在这下载即可

复制代码
ivregress 2sls lnw s expr tenure rns smsa (iq=med kww),r first
# r 同robust 表示使用异方差强健的标准误
# 注意smsa后空一格,不然报错r(132):parentheses unbalanced

#  ivreghdfe lnw s expr tenure rns smsa (iq=med kww)

# 常用的ivreghdfe也可以得出结果,但是后续的过度检验无法进行

表示med kww都和iq 正相关,med p值 <0.5表示在95%的置信度下显著 kww 在99.9%下都显著

此时表示s贡献率6.08%,合理,在99.9%的置信度下可靠

4.检验外生性 过度检验

复制代码
estat overid

p> 0.05,接受原假设,(med,kww)外生

5.检验内生性

复制代码
quietly ivregress 2sls lnw s expr tenure rns smsa (iq=med kww)
# quietly 表示仅存储结果不显示

estat firststage

F > 10 ,故不存在弱工具变量

5+. 弱工具变量的解决方法 LIML 有效信息最大似然估计法

复制代码
ivregress liml lnw s expr tenure rns smsa (iq=med kww),r

结果与2sls接近,so证明无弱工具变量

6.检验解释变量是否存在内生变量

复制代码
# 比较ols 和 2sls的 差别 if p<0.05 则拒绝H0:所有解释变量均外生
quietly reg lnw iq s expr tenure rns smsa 

estimates store ols

quietly ivregress 2sls lnw s expr tenure rns smsa (iq=med kww)

estimates store iv

hausman iv ols,constant sigmamore 

# constant 表示 ols 和iv中均存在常数项
# sigmamore 表示使用效率高的,若同方差则 使用ols(此时iv = ols) ,异方差 iv


p < 0.05 ,则拒绝原假设,则解释变量中存在内生变量

ATTN\] 豪斯曼检验仅适用于同方差,异方差适用杜宾-吴-豪斯曼检验 DWH ### 6+. DWH 检验 estat endogenous ![](https://i-blog.csdnimg.cn/direct/b78a99d9e58d4781881ae88232dacb1b.png) p\<0.05,则存在内生性解释变量,即iq ## 7.存储结果于一个表格中并显示显著性,用在论文结果展示中 esttab ols_no_iq ols_with_iq tsls liml,se r2 mtitle star (* 0.1 ** 0.05 *** 0.01) # 需要提前安装estout # ssc install estout # se 表示在括弧中显示标准误(默认使用t统计量,p 则显示p值) # r2 即R^2 # mtitle (model title)表示 使用模型名称作为列标题 ![](https://i-blog.csdnimg.cn/direct/45c9510a10ee413abc08f72538b65ed3.png) 7+.输出word esttab ols_no_iq ols_with_iq tsls liml using iv.rtf,se r2 mtitle star (* 0.1 ** 0.05 *** 0.01) # 添加 using iv.rtf rtf - rich text format ![](https://i-blog.csdnimg.cn/direct/ff5f6ce72ede41e1886101d383fb8c0c.png) 点击此处即可显示rtf文件,可以复制到word中 ![](https://i-blog.csdnimg.cn/direct/9d54460b6b8e4fa0aa706fb6a71f6e88.png)

相关推荐
数据科学作家2 个月前
有序逻辑回归的概念、适用场景、数据要求,以及其在Stata中的操作命令及注意事项,Stata ologit回归结果怎么看?并附详细示例
数据分析·回归·逻辑回归·统计分析·stata·统计学·计量经济学
数据科学作家3 个月前
学数据分析必囤!数据分析必看!清华社9本书覆盖Stata/SPSS/Python全阶段学习路径
人工智能·python·机器学习·数据分析·统计·stata·spss
数据科学作家3 个月前
0基础怎么学习数据分析、统计分析、机器学习?数学不好、一看编程就头疼,能行吗?
python·数据分析·统计分析·stata·spss·统计学·计量经济学
Triumph191 年前
对同一文件夹下所有excel表进行相同操作(数据填充、删除、合并)
excel·stata
郝YH是人间理想1 年前
4000字三合一!Stata、SPSS、MATLAB实现多元线性回归详解!
开发语言·算法·数学建模·matlab·线性回归·stata·spss
时问桫椤2 年前
【科学研究】远近亲疏?朋友圈点赞会有讲究吗?
stata·软件
做自己的探路者2 年前
组基轨迹建模 GBTM的介绍与实现(Stata 或 R)
分类·r语言·stata·组基轨迹建模·gbtm·纵向数据
Wei&Yan2 年前
数学建模—多元线性回归分析(+lasso回归的操作)
算法·数学建模·matlab·回归·线性回归·stata