Stata:内生转换模型及其应用-movestay-mspredict
👇 连享会 · 推文导航 | www.lianxh.cn
🍎 Stata:Stata基础 | Stata绘图 | Stata程序 | Stata新命令 📘 论文:数据处理 | 结果输出 | 论文写作 | 数据分享 💹 计量:回归分析 | 交乘项-调节 | IV-GMM | 时间序列 | 面板数据 | 空间计量 | Probit-Logit | 分位数回归 ⛳ 专题:SFA-DEA | 生存分析 | 爬虫 | 机器学习 | 文本分析 🔃 因果:DID | RDD | 因果推断 | 合成控制法 | PSM-Matching 🔨 工具:工具软件 | Markdown | Python-R-Stata 🎧 课程:公开课-直播 | 计量专题 | 关于连享会
连享会 · 2022 面板数据因果推断专题
作者:曹昊煜 (兰州大学)
邮箱:caohy19@lzu.edu.cn
编者按:本文主要摘译自下文,特此致谢!
Source:Lokshin M, Sajaia Z. Maximum likelihood estimation of endogenous switching regression models[J]. The Stata Journal, 2004, 4(3): 282-289. -PDF-
目录
1. 简介
2. 内生转换模型
2.1 模型设定与 ML 估计
2.2 预测
3. 论文中的应用
3.1 差距估算
3.2 估计处理效应
4. 相关命令介绍
5. Stata 范例
6. 参考文献
7. 相关推文
温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」。或直接长按/扫描如下二维码,直达原文:
1. 简介
在多数实证研究中,个体观测很可能是一个选择后的结果,例如是否加入工会、是否在公共部门就业或是否买房。由于只能观测到个体的选择行为以及选择后的结果,直接将结果变量对决策变量回归可能存在遗漏变量的内生性问题。为了缓解上述问题对实证研究的影响,本文将介绍一种通过设定转换方程对决策变量建模的方法,即内生转换模型。
2. 内生转换模型
2.1 模型设定与 ML 估计
在内生转换模型中,需要构建两个回归模型,以及一个示性函数。其中,个体决策结果由示性函数决定。具体如下:
其中,
是连续的被解释变量, 和 是外生变量向量,、 和 是待估计的参数。三个方程中的干扰项 、 和 满足零均值的联合正态分布,并且相关系数矩阵为:
其中, 为选择方程中干扰项的方差, 为连续方程中干扰项方差, 为选择方程和连续方程干扰项的协方差。由于两种 无法同时观测,因此没有定义二者干扰项之间的协方差。在给定方差的分布后,模型的对数似然函数为:
其中,
是某种权重, 是选择方程干扰项和连续方程干扰项的相关系数。为了将 的估计限定在 -1 到 1 之间, 始终为正,并且 ML 直接估计的是 ,以及 。
2.2 预测
除了参数估计外,内生转换模型还有一项重要的工作是预测不同状态下结果变量的情况。其中,无条件期望的预测为:
条件期望的预测为:
条件期望在部分情况下是对可观测结果的预测,但也包含了对不可观测情形下选择结果的预测。
3. 论文中的应用
3.1 差距估算
万相昱等 (2021) 对公共部门和私人部门的工资差距进行了估计。其内生转换模型为:
在估计了内生转换模型后,万相昱等 (2021) 又对部门工资的无条件期望进行了预测,进而得到公共部门和私人部门的拟合工资:
最后,近似计算了部门之间的工资差异。由于被解释变量是对数值,首先需要进行反对数计算:
3.2 估计处理效应
李亚娟和马骥 (2021) 使用内生转换模型,来估计采纳科学施肥技术处理组和控制组的平均处理效应。具体来看,分别用 和 表示是否采纳科学施肥技术和不同选择下的收入,内生转换模型表示为:
根据估计结果,进一步应用内生转换模型预测了不同条件下的被解释变量。在可观测条件下,预测式是:
不可观测条件下,预测反事实:
从而可以定义处理组和控制组的平均因果效应:
文中还绘制了不同条件下的收入分布情况,可以直观表现采纳科学施肥技术对收入分布的影响效果,效果如下图。
4. 相关命令介绍
*命令安装
ssc install movestay, replace
*命令语法
movestay (depvar1 [=] varlist1) [(depvar2 [=] varlist2)] [weight] [if
exp] [in range] , select(depvar_s [=] [varlist_s]) [robust
cluster(varname) maximize_options]
其中,
(depvar1 [=] varlist1)
:设定连续方程 1 的形式;[(depvar2 [=] varlist2)]
:设定连续方程 2 的形式。仅当两个模型的解释变量存在冲突或被解释变量不同时设定;select(depvar_s [=] [varlist_s])
:设定选择方程的形式。该方程的估计基于两种解释变量,一种是连续方程中的所有外生变量,另一种是额外的工具变量,即必须至少加入一个连续方程中没有出现的变量;robust/cluster
:设定异方差稳健标准误或聚类稳健标准误;maximize_options
:设定最优化的选项。当模型不收敛或出现其它问题时,可以通过该选项调整模型。
上述命令设定连续方程形式和选择方程形式,当连续方程中加入的变量相同时,只需要设定一次。
内生转换模型估计结束后,可以使用 mspredict
进行预测。
*命令安装
net install st0071_2, replace
*命令语法
mspredict newvarname [if exp] [in range], statistic
5. Stata 范例
本例对应的研究是,在公共部门和私人部门就业对工资的影响。由于工资是就业部门选定后的结果,因此存在内生性问题。该模型的设定为:
其中, 是个体选择的潜变量, 是在不同部门的工资对数值, 是决定部门选择的因素, 是影响部门工资的因素。可以观测的选择结果与潜变量之间的关系为:
直接估计该模型的问题是,可能存在不可观测的因素同时影响部门选择和个体工资,忽略这些选择效应很容易得出错误的结论。
本文使用的数据集中共包含了 12 个变量。其中,private 表示就业选择,如果个体在私有部门就业则取 1,否则取 0;被解释变量 lmo_wage 是月工资的对数值。估计连续方程使用的外生变量主要来自 Minser 方程,纳入年龄及其平方项 age-age2,教育水平虚拟变量 edu4、edu5 和 edu13,地区变量 reg2-reg4。估计选择方程使用的数据是婚姻情况 m_s1 和家庭成员就业情况 job_hold。
首先使用 ML 估计内生转换模型:
. lxhuse movestay_example.dta ,clear
. movestay lmo_wage age age2 edu13 edu4 edu5 reg2 reg3 reg4, ///
> select(private = m_s1 job_hold) // 估计内生转换模型
Endogenous switching regression model Number of obs = 2094
Wald chi2(8) = 102.43
Log likelihood = -2470.9304 Prob > chi2 = 0.0000
------------------------------------------------------------------------------
| Coefficient Std. err. z P>|z| [95% conf. interval]
-------------+----------------------------------------------------------------
lmo_wage_1 |
age | 0.042 0.029 1.45 0.147 -0.015 0.100
age2 | -0.001 0.000 -1.55 0.121 -0.001 0.000
edu13 | 0.344 0.279 1.23 0.219 -0.204 0.891
edu4 | -0.158 0.161 -0.98 0.326 -0.473 0.157
edu5 | -0.164 0.130 -1.26 0.207 -0.419 0.091
reg2 | -0.286 0.110 -2.61 0.009 -0.502 -0.071
reg3 | 0.708 0.143 4.96 0.000 0.428 0.987
reg4 | -0.138 0.141 -0.98 0.328 -0.416 0.139
_cons | 7.416 0.481 15.42 0.000 6.473 8.358
-------------+----------------------------------------------------------------
lmo_wage_0 |
age | -0.037 0.011 -3.32 0.001 -0.059 -0.015
age2 | 0.000 0.000 2.91 0.004 0.000 0.001
edu13 | -0.507 0.089 -5.72 0.000 -0.680 -0.333
edu4 | -0.411 0.051 -8.08 0.000 -0.510 -0.311
edu5 | -0.297 0.039 -7.59 0.000 -0.374 -0.221
reg2 | -0.378 0.042 -8.99 0.000 -0.460 -0.296
reg3 | 0.705 0.053 13.26 0.000 0.601 0.810
reg4 | -0.236 0.047 -4.96 0.000 -0.329 -0.143
_cons | 9.322 0.238 39.21 0.000 8.856 9.788
-------------+----------------------------------------------------------------
private |
age | -0.146 0.026 -5.62 0.000 -0.196 -0.095
age2 | 0.001 0.000 4.47 0.000 0.001 0.002
edu13 | 0.076 0.246 0.31 0.757 -0.406 0.558
edu4 | 0.069 0.142 0.49 0.626 -0.208 0.346
edu5 | 0.235 0.106 2.21 0.027 0.027 0.444
reg2 | -0.440 0.096 -4.59 0.000 -0.628 -0.252
reg3 | -0.596 0.119 -5.02 0.000 -0.829 -0.363
reg4 | -0.601 0.113 -5.33 0.000 -0.822 -0.380
m_s1 | 0.157 0.092 1.70 0.088 -0.024 0.338
job_hold | 0.055 0.036 1.53 0.127 -0.016 0.126
_cons | 2.505 0.579 4.33 0.000 1.371 3.640
-------------+----------------------------------------------------------------
/lns1 | -.5903432 .0562427 -10.50 0.000 -.7005769 -.4801095
/lns2 | -.4220208 .0186565 -22.62 0.000 -.4585869 -.3854546
/r1 | .1456952 .3195504 0.46 0.648 -.480612 .7720024
/r2 | 1.353759 .0813975 16.63 0.000 1.194222 1.513295
-------------+----------------------------------------------------------------
sigma_1 | .5541371 .0311662 .4962989 .6187156
sigma_2 | .6557204 .0122335 .6321763 .6801414
rho_1 | .144673 .3128621 -.4467336 .6480923
rho_2 | .8749375 .0190864 .8318838 .907522
------------------------------------------------------------------------------
LR test of indep. eqns. : chi2(1) = 86.94 Prob > chi2 = 0.0000
------------------------------------------------------------------------------
可以看出,Stata 同时汇报了两个连续方程和选择方程的估计结果。我们可以根据系数的显著性解读模型结果,进而确定哪些因素影响了私人、公共部分的工资以及个体关于就业部门的选择。不过,更为重要的是通过预测来估算部门间的工资差距和处理效应。
首先进行无条件预测,并估计部门之间的工资差异。根据计算结果可知,私人部门的工资比公共部门高 0.012 个水平值。
. mspredict lnwage1, xb1 // 私人部门的对数工资
. mspredict lnwage0, xb2 // 公共部门的对数工资
. tempvar w_np w_p
. gen `w_p' = exp(lnwage1) // 私人部门工资反对数值
. gen `w_np' = exp(lnwage0) // 公共部门工资反对数值
. gen w_diff = (`w_np'-`w_p')/`w_p' // 个体工资差异
. qui sum w_diff // 求平均工资差异
. dis "私人部门与公共部门的工资差异为:`r(mean)' "
私人部门与公共部门的工资差异为:.0117846367684842
接下来进行条件预测潜在结果,并估计 ATT 和 ATUT。可以看出,二者的估计结果分别为 -0.765 和 0.133,即进入私人部门的个体如果在公共部门工作,平均收入可能上升。
. mspredict yc11, yc1_1 // 私人部门工作的个体在私人部门就业收入的预测
. mspredict yc10, yc1_2 // 公共部门工作的个体在私人部门就业收入的预测
. mspredict yc01, yc2_1 // 私人部门工作的个体在公共部门就业收入的预测
. mspredict yc00, yc2_2 // 公共部门工作的个体在公共部门就业收入的预测
. qui sum yc11
. local yc11_m = r(mean)
. qui sum yc01
. local yc01_m = r(mean)
. dis "ATT = mean(yc11) - mean yc(01) = " `yc11_m'-`yc01_m'
ATT = mean(yc11) - mean yc(01) = -.76548519
. qui sum yc10
. local yc10_m = r(mean)
. qui sum yc00
. local yc00_m = r(mean)
. dis "ATT = mean(yc10) - mean yc(00) = " `yc10_m'-`yc00_m'
ATT = mean(yc10) - mean yc(00) = .13282834
最后可以应用如下代码绘制不同分组的收入密度函数图像,来进行直接比较。
kdensity yc11,legend(label(1 "kdensity of y11") label(2 "kdensity of y01") col(2)) ///
title("") xtitle("") addplot(kdensity yc01,lp(dash)) saving(graph1.gph,replace)
kdensity yc10,legend(label(1 "kdensity of y10") label(2 "kdensity of y00") col(2)) ///
title("") xtitle("") addplot(kdensity yc00,lp(dash)) saving(graph2.gph,replace)
graph combine graph1.gph graph2.gph ,cols(1)
6. 参考文献
Lokshin M, Sajaia Z. Maximum likelihood estimation of endogenous switching regression models[J]. The Stata Journal, 2004, 4(3): 282-289. -PDF- 万相昱, 唐亮, 张晨. 公共部门和非公共部门劳动力收入差距研究——基于内生转换模型的实证检验[J]. 产业经济评论, 2021(02): 93-105. -Link- 李亚娟, 马骥. 科学施肥技术的收入效应差异分析——基于粮农初始禀赋的实证估计[J]. 农业技术经济, 2021(07): 18-32. -Link-
7. 相关推文
Note:产生如下推文列表的 Stata 命令为:
lianxh 内生, m
安装最新版lianxh
命令:
ssc install lianxh, replace
专题:IV-GMM Stata:当工具变量小于内生变量时,该如何估计?-mmeiv IV:可以用内生变量的滞后项做工具变量吗? IV专题: 内生性检验与过度识别检验 专题:内生性-因果推断 内生性!内生性!解决方法大集合 Stata:内生变量与工具变量非线性关系处理-discretize 内生性:来源及处理方法-幻灯片下载 locmtest:非线性模型的内生性检验 Stata:内生变量的交乘项如何处理? 第三种内生性:衡量偏误(测量误差)如何检验-dgmtest? 专题:交乘项-调节 内生变量的交乘项如何处理? Stata:内生变量和它的交乘项 专题:分位数回归 Stata:面板分位数模型估计及内生性初探
课程推荐:面板数据因果推断
主讲老师:徐轶青 (斯坦福大学)
🍓 课程主页:https://gitee.com/arlionn/Course
New! Stata 搜索神器:
lianxh
和songbl
GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
. ssc install lianxh
. ssc install songbl
👉 使用:
. lianxh DID 倍分法
. songbl all
🍏 关于我们
连享会 ( www.lianxh.cn,推文列表) 由中山大学连玉君老师团队创办,定期分享实证分析经验。 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。