Stata:交乘项该这么分析!

发布时间:2020-03-16 阅读 429

typora-root-url: Figs

编译: 刘聪聪 (中山大学),陈点点 (中国人民大学)

Source: Hainmueller, Jens, Jonathan Mummolo, and Yiqing Xu. "How much should we trust estimates from multiplicative interaction models? Simple tools to improve empirical practice." Political Analysis 27.2 (2019): 163-192. [PDF]

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

连享会 - Stata 暑期班

线上直播 9 天:2020.7.28-8.7
主讲嘉宾:连玉君 (中山大学) | 江艇 (中国人民大学)
课程主页https://gitee.com/arlionn/PX | 微信版


目录


1. 问题介绍

交叉项探讨的是结果变量 Y ,处理变量 D 和调节变量 X 三个变量的关系。

实证研究应用中经常犯两个错误:

错误1:模型设定错误,假设交叉项的影响是线性的
错误2:数据缺乏共同支持

1.1 模型设定错误: LIE 假设

交叉项模型普遍设定为形如下式的回归方程:

式中,Z 为控制变量,μ 为常数项,ε 为干扰项。

该模型隐含了一个关键假设——线性交互作用假设(linear interaction effect assumption, 下文简写为 LIE) ,即处理变量 D 对结果变量 Y 的边际效应为

其含义是:

  1. X 每增加一个单位,D 对 Y 的边际作用发生 β 单位的变化;
  2. X 对 D 的边际效应的影响在 X 的整个定义域内不变,均为常数β

显而易见,这个假设过于严格,因为我们几乎没有理论或经验理由相信 D 对 Y 的影响的异质性以这种线性形式存在。 D 的边际效应更有可能是非单调或非线性的。比如,当 X 较小或较大时,D 的边际效应小,而当 X 在中间的时候, D 的边际效应比较大。

1.2 调节变量 X 缺乏共同支持

什么是共同支持?

理想情况下,为了计算处理变量 D 在给定的调节变量值 x0 的边际效应,需要满足:

  1. 有足够数量的观测值,它们的 X 值接近于 x0。 也就是说,使用的数据在 x0 附近有足够多的观测值。
  2. 在 X 处的处理变量 D 是有变化的。

不满足以上的任何一个条件,那么条件边际效应的估计就是以函数形式对没有数据或极少量数据的区域的过度外推或内插,因此估计是脆弱的并且依赖于模型。

何时缺乏共同支持?

以下情形的数据通常缺乏共同支持:

  1. D 或 X 的分布是高度有偏的
  2. D 或 X 在二者的共同支持区域内没有变化

模型(1)意味着,处理效应可以用处理变量 D 分别取值为d1d2的差来表示:

可见,在 LIE 假设下, D 对 Y 的影响实质上是线性函数 (μ+ηX+αd1+βd1X)(μ+ηX+αd2+βd2X)之差,也即是说,对于所有的d1d2,这一线性形式都成立。如果存在非线性或非单调的影响,或者 X 或 D 的分布有偏,那么这一假设就无法成立。

比如,当 D 为二值变量时,在x0附近,所有的 D 均取值为 1,此时缺乏 D=0 的观测值,数据不满足共同支持条件,对 D 的边际效应的估计就依赖于对 D=0 的内插或外推,因此高度依赖于模型。

2. 检验诊断

问题提出来了,怎么解决呢?作者给出了一种非常简单又有效的办法:数据可视化,通过线性交互作用诊断图进行判断。

  • 第一步,将原始数据按 X 进行分组,画出 Y-D 的散点图。如果 X 是类别变量,那么直接分组;如果 X 是连续变量,那么按照分位数等分成低中高三组。

  • 第二步,检查 Y 与 X 在各组中的关系是否为线性。在散点图上用蓝色线进行线性回归拟合,用红色线进行 LOESS 拟合。如果真实模型是线性的,那么两条线非常接近;反之,当真实模型是非线性的,两条线走势有明显差异。这是对错误 1 的检验。此外,对比同一条拟合线在不同分组中的走势,还可以对交互项的作用方向做出初步判断。

  • 第三步,检验共同支持条件。在散点图上叠加 X 分布的箱型分布图。散点图本身也提供了 X 分布的信息。如果 X 在数据区间内都有分布而且比较均匀,比如 25 分位点到 75 分位点几乎占据整个区域,那么满足共同支持条件;反之, X 集中在某个区间,在另外的区域数据很少或没有观测值,则不满足共同支持条件。

如果交互作用是双向的(一般模型均如此),那么要把 D 与 X 位置互换,将上述步骤再做一遍。

如下图所示,图 a 中 D 为类别变量,LOWESS 与 OLS 几乎完全重合,满足线性边际效应;但 X 分布集中在 2.5~3.5 之间,缺乏共同支持。图 b 中 D 为类别变量,LOWESS 为 U 型,说明数据存在非线性;X 分布贯穿整个区域,满足共同支持条件。图 c 中 D 为连续变量,分三组图示,LOWESS 与 OLS 几乎重合,满足线性边际效应;X 在各个分组都有分布且比较均匀,满足共同支持条件。

LID plots
LID plots

3. 估计量

在散点图的基础上,作者进一步提供了箱型估计量和核估计量两种估计量,对乘法交互模型的拟合结果进行检验,并且提供了将其可视化的程序 interflex

这里的偏差-方差权衡在于,一方面,这些估计量减少了缺乏共同支持造成的偏差;另一方面,若交互项的影响确实是线性的,则线性模型的结果要比这些估计量更有效。

3.1 箱型估计量(Binning Estimator)

按照连续变量的分组方法进行估计,得到低中高(L,M,H)三个边际效应估计系数和相应的置信区间。如下图所示,

  1. 如果 (1)线性回归线与 L,M,H 不存在显著差异(可根据 Wald 检验判断) (2)L,M,H 在整个数据区间内分布比较均匀,不是集中在某个区域 说明满足 LIE 假设和共同支持条件,线性模型提供的是一致和有效估计量。

  2. 如果箱型估计量 L,M,H 偏离原模型的拟合线,分布在其两侧,说明条件边际作用非线性,拒绝 LIE 假设。

Binning Estimator
Binning Estimator

3.2 核估计量(Kernel Estimator)

箱型估计量只有三个点,核估计量则呈现了数据区间内的完整曲线。如下图所示,其判断依据为:

  1. 如果核估计量结果接近一条直线,则满足 LIE 假设;如果弯曲程度很大,那么 LIE 假设不满足,线性模型结果不一致。

  2. 置信区间越宽的区域,越缺乏共同支持。

Kernel Estimator
Kernel Estimator

4. 结论

文章的主要内容是针对线性交互模型中存在的线性交互作用假设不适用和缺乏共同支持两个主要问题,分析问题的由来(模型设定错误和数据不足)及可能的影响(估计量不一致且有偏或高度依赖模型),提出了问题的识别方法(线性交互作用诊断图 LID plot)以及更有效的估计量(箱型估计量和核估计量),并且把新方法用于已有文章进行检验。

最后,作者建议分析交互作用的研究者采取以下安全措施:

  1. 画 LID 图以检查原始数据,包括 X|D 和 D|X 两个方面。
  2. 参考箱型估计量。
  3. 参考核估计量。
  4. 谨慎使用线性交互模型。得到箱型或核估计量支持才使用线性模型,并且应当在有充分的共同支持的数据区域计算边际效应。建立线性模型后还要再参考 Brambor, Clark and Golder (2006)一文的使用指导。  

连享会 - 文本分析与爬虫 - 专题视频

主讲嘉宾:司继春 || 游万海

连享会-文本分析与爬虫-专题视频教程
连享会-文本分析与爬虫-专题视频教程

5. interflex 命令介绍

命令安装 ssc install interflex, replace all

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
 interflex outcome treat moderator [covar] [if] [in] [weight] [, options]//选项解释*- fe(varlist)             specify fixed effects variables*- type(string)            specify the estimation strategy, including binning (default), linear, and kernal*- vce(vcetype)            specify the variance–covariance estimator; vcetype can be homoscedastic (default), robust, cluster, bootstrap, or off*-  bw(real)                set the bandwidth for kernel estimations

当使用 interflex 检查LIE和共同支持假设时,其命令结构是在后面顺次加上被解释变量 Y , 处理变量 D,调节变量 X,以及控制变量。

各个选项的含义:

  • fe(varlist) 设定固定效应变量;
  • type(string) 设定估计方法,箱型(默认)、线性和核估计量;
  • vce(vcetype) 设定协方差矩阵类型,默认是同方差,也可以选择 robust , cluster 等;
  • bw(real) 可以设定核估计带宽值,以提高效率。

6. 应用

下面以作者提供的数据进行展示和说明。

6.1 线性二分类变量处理效应

  • ounter(line
  • ounter(line
  • ounter(line
. use interflex_s1.dta, clear. twoway (sc Y X) (lowess Y X), by(D) // Plot the raw data. interflex Y D X Z1 // Estimate a linear interaction model
scatter1
scatter1
线性二分类变量处理效应
线性二分类变量处理效应

当 D 是 二分类变量时,比较简单,通过作出散点图和lowess图可以简单判断下LIE假设是否成立。之后用interflex发现箱型估计量支持使用线性交互模型。

6.2 线性连续变量处理效应

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
. use interflex_s2.dta, clear. egen Xbin = cut(X), group(3)       //生成类别变量. twoway (sc Y D) (lowess Y D), by(Xbin). interflex Y D X Z1, type(kernel) bw(5.0)
scatter2
scatter2
线性连续变量处理效应
线性连续变量处理效应

当 D 为 连续变量时,情况就更复杂了一点。作者建议说使用分组(Binning)的方法,可以检查出绝大多数的问题。通常可以将样本基于调节变量分成几个等分的几组,在本例中,0 代表 low X ,1 代表 medium X , 2 代表 high X。然后在每一组都作出线性拟合线和 lowess 拟合线。

可以发现,当 X 较 小,为第0组的时候, Y 和 D 的 关系为负;当 X 为 第一组的时候, Y 与 D 的 关系是平的;而当 X 属 于第2组,即最大的时候, Y 与 D 的 关系为正的。从中也可以简单推测认为是符合LIE假设的。通过 interflex 的核估计量检验,可以认为是符合LIE假设的。

6.3 非线性二分类变量处理效应

  • ounter(line
  • ounter(line
use interflex_s3.dta, cleartwoway (sc Y X) (lowess Y X), by(D)
sactter3
sactter3

从散点图和 LOWESS 的拟合线中可以看出,数据存在明显的非线性边际效应。因此,运用箱型估计量进行检验:

  • ounter(line
  • ounter(line
interflex Y D X Z1, vce(r)p value of Wald test: 0.0000
Binning1
Binning1

可以看到,当线性交互模型不正确时,箱型估计量与模型的拟合结果(黑色直线及阴影区域)相去甚远。

注意图底部的堆积柱状图,它显示了调节变量 X 的分布。柱体的总高度是调节变量 X 在整个样本中的分布,红色和灰色阴影条分别是 X 在处理组和控制组中的分布。若某一个柱体中只有红色或灰色,则该区域缺乏共同支持。

与此同时,Stata 报告了 Wald 检验的 p 值。其原假设为:交互作用是线性的。拒绝原假设说明存在非线性影响,但接受原假设不一定满足LIE 假设,尤其是在小样本的情况下。

使用核估计量进一步检验:

  • ounter(line
 interflex Y D X Z1, type(kernel) bw(0.345)

在选项中设定 type(kernel) 会自动通过交叉验证选择最佳带宽,但程序运行比较费时。在第一次运行结束后复制好带宽的值,放入 bw() 选项中可以提高效率。

kernel1
kernel1

使用核估计得到的边际效应估计量与真实的数据产生过程十分接近。

6.4 固定效应对结果的影响

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
use interflex_s4.dta, clear//控制 组别和年份 固定效应//画出原始数据twoway (sc Y X) (lowess Y X), by(D)interflex Y D X Z1, cl(group)//如果固定效应没有被控制,那么箱型统计量会有较大的置信区间// 控制固定效应interflex Y D X Z1, fe(group year) cl(group)
scatter4
scatter4
未控制固定效应
未控制固定效应
控制固定效应
控制固定效应

当没有控制固定效应时,发现置信区间明显很大;而当控制固定效应之后,置信区间明显变小了。

文中数据和代码 help interflex 即可得到。(注:help 文档里的数据可以自行到作者网站http://yiqingxu.org/software.html 上获得。)

相关资料

相关课程

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

免费公开课:


课程一览

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

专题 嘉宾 直播/回看视频
Stata暑期班 连玉君
江艇
线上直播 9 天
2020.7.28-8.7
效率分析-专题 连玉君
鲁晓东
张 宁
视频-TFP-SFA-DEA
已上线,3天
文本分析/爬虫 游万海
司继春
视频-文本分析与爬虫
已上线,4天
空间计量系列 范巧 空间全局模型, 空间权重矩阵
空间动态面板, 空间DID
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
直击面板数据模型 [免费公开课,2小时]

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


关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。直播间 有很多视频课程,可以随时观看。
  • 连享会-主页知乎专栏,300+ 推文,实证分析不再抓狂。
  • 公众号推文分类: 计量专题 | 分类推文 | 资源工具。推文分成 内生性 | 空间计量 | 时序面板 | 结果输出 | 交乘调节 五类,主流方法介绍一目了然:DID, RDD, IV, GMM, FE, Probit 等。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:
    • 课程, 直播, 视频, 客服, 模型设定, 研究设计, 暑期班
    • stata, plus,Profile, 手册, SJ, 外部命令, profile, mata, 绘图, 编程, 数据, 可视化
    • DID,RDD, PSM,IV,DID, DDD, 合成控制法,内生性, 事件研究, 交乘, 平方项, 缺失值, 离群值, 缩尾, R2, 乱码, 结果
    • Probit, Logit, tobit, MLE, GMM, DEA, Bootstrap, bs, MC, TFP, 面板, 直击面板数据, 动态面板, VAR, 生存分析, 分位数
    • 空间, 空间计量, 连老师, 直播, 爬虫, 文本, 正则, python
    • Markdown, Markdown幻灯片, marp, 工具, 软件, Sai2, gInk, Annotator, 手写批注, 盈余管理, 特斯拉, 甲壳虫, 论文重现, 易懂教程, 码云, 教程, 知乎

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

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


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

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