查看原文
其他

统计计量 | fect:基于面板数据的因果推断(上)-T218a

数据Seminar 2022-12-31

The following article is from 连享会 Author 连享会

本文转载自公众号连享会(ID:lianxh_cn)
作者: 曹琳君 (南开大学) ;陈波 (深圳大学)
邮箱:linjuncao@yeah.net ;1900123011@email.szu.edu.cn
Source: Practical Guide to Counterfactual Estimators for Causal Inference with Time-Series Cross-Sectional Data." Working Paper, Stanford University, -Link-[1]
目录
  • 1.背景介绍
  • 2.分组绘图
    • 2.1 fect 命令的适用条件
    • 2.2 基于 fect 命令的反事实估计量
  • 3.fect命令安装
  • 4.fect命令介绍
    • 4.1 Fixed Effects (FE)
    • 4.2 Interactive Fixed Effects (IFE)
    • 4.3Matrix Completion (MC)
  • 5.结语
  • 6.参考资料

 1   背景介绍
双向固定效应分析是人们用来识别因果机制的主要策略之一,它基于两个重要的假设条件:(1) “线性假设”,即干预效果在研究的时间范围内以固定的速率变化 (当干预为二分变量时,则简化为干预效果恒定) ;(2) “无时变混杂因素假设”,即不存在同时与干预结果和潜在结果相关的未观察到的、随时间变化的因素。当只有两个时期和两个组时,这一假设意味着平行趋势。
然而严格的假设条件意味着它只能在平行世界中产生可解释的因果估计,任一假设的失败都会导致因果估计结果的偏差。
针对这一问题,Licheng Liu (Tsinghua) 、Ye Wang (NYU) 和 Yiqing Xu (Stanford) 三位学者开发了 fect 命令,通过引入一组估计量来放宽双向固定效应在分析干预措施为二元变量时的假设条件,以获得更精确的因果估计结果。
本文主要介绍 fect 命令的基本原理和相关语法,以帮助大家更好的进行因果推断。
 2   fect 命令的基本原理
在这一环节,本文主要介绍 fect 命令的适用条件及三种基于 fect 命令生成的反事实估计量。
2.1 fect 命令的适用条件
fect 命令适用于干预措施是二分变量的固定效应模型,它的固定效应既可以相加也可以交互。该命令包括以下功能性假设:

A1. 固定效应假设

(1) 双向固定效应假设 (Two-way fixed effects) :对任一样本  , 它在  时间的干预效果为 ,其计算公式为:
  •  表示样本  是否在时间  被干预 (如果是则取值为 1 ,否则取值为 0) ;
  •  表示样本  在时间  的干预效果;
  •  表示一个 (p× 1) 的外生协变量向量;
  •  表示一个 (p× 1) 的未知参数向量;
  •  和  分别表示各种独立的不随时间改变的个体效应和不随个体改变的时间效应;
  •  表示表示样本  在时间  受到的未被观察到的特殊冲击,且均值为 0 。
该假设与传统的固定效应假设的区别在于:该假设允许干预效果在样本之间和不同时间内是异质性的,放宽了传统的固定效应分析的线性假设 (即当干预变量为二分变量时,干预效果是恒定的假设) 。
(2) 交互固定效应假设 (Interactive fixed effects) :对任一样本  , 它在  时间的干预效果为 ,其计算公式为:
同固定效应假设的计算公式相比,交互固定效应假设的计算公式增加了  项,其中  表示一个未被观察到的公共因子的  向量,   表示一个未知的因子载荷  向量。
因子可以理解为对每个单元产生不同的影响的时变趋势,因子载荷可以理解为由每个单元的各种未观察到的特征引起的异质性影响。例如, 2008 年的金融危机打击了美国经济,但它对不同的城市产生了不同的影响,这取决于一个城市的人口统计学特征、房地产市场、产业结构等。
该假设与传统的固定效应假设的区别在于:该假设利用  捕捉了时变趋势的特征,放宽了传统的固定效应分析的“无时变混杂因素假设”。

A2. 严格外生性假设

双向固定效应假设模型和交互固定效应假设模型都假设在进行干预效果分析时的残差项严格外生。
2.2 基于 fect 命令的反事实估计量

干预组的平均干预效果 ATT 和干预开始以来的整数期内的平均干预效果 ATTs 是进行因果分析的重要指标。
ATT 的计算公式如下:

 表示干预组, s.t. 
ATTs 的计算公式如下:(向左滑动查看完整公式)
 for any 
基于 fect 命令,研究者可以生成 3 个关于 ATT 的反事实因果估计指标:(1) 固定效应的反事实因果估计量 (Fixed-effect counterfactual estimator) ,(2) 交互固定效应的反事实估计量 (Interactive fixed-effect counterfactual estimator) 和 (3) 矩阵完备估计量 (Matrix completion estimator)。
(1) 固定效应的反事实因果估计量 (FEct) 的特点:该估计量与传统的双向固定效应模型共享相同的假设,同时放宽当干预效果为二分变量时的恒定干预效果假设。当干预效果是异质性的时候,该估计量依然稳健。
(2) 交互固定效应的反事实估计量 (IFEct) 的特点:当存在未观察到的时变混杂因素时, FEct 将导致有偏估计。如果这些混杂因素可以分解为时间特定因子与单位特定因子载荷相互作用,我们可以使用 IFEct 来获得更精确的估计量。IFEct 估计量是对 FEct 估计量的拓展,放宽了双向固定效应模型中的“无时变混杂因素假设”。
(3) 矩阵完备估计量 (MC) 的特点:类似于 FEct 估计量和 IFEct 估计量,它将因果推理问题视为一个任务,即完善一个 矩阵的缺失项, 当  时缺少发生。
 3   fect 命令安装
fect 命令依赖 reghdfe 和 ftools 命令, 所以在安装 fect 命令之前,我们需要事先安装最新的 reghdfe 命令和 ftools 命令:
ssc install reghdfe, replace

ssc install ftools, replace
安装这两个命令 之后,作者提供了两种方法安装 fect

途径 1 :在线安装

若电脑中已安装 fect 命令,先通过 uninstall 卸载旧命令。随后使用 net install 从指定网址安装最新的安装包。
cap ado uninstall fect

net install fect, from(https://raw.githubusercontent.com/xuyiqing/fect_stata/master/) replace
但是考虑到国内的上网条件,访问 github 网速很慢,上述方法不一定安装成功。因此作者提供了本地安装方法。

途径 2 :本地安装

我们先从 fect 命令所在网址: https://github.com/xuyiqing/fect_stata ,手动下载 ZIP 压缩文件。当然,考虑到国内访问 github 较慢,我们可以访问国内码云链接:https://gitee.com/caolinjun/fect_stata.git , 点击【克隆/下载】。将文件解压到特定位置,如 D:\fect ,并将文件存放路径粘贴至 from() 中,运行以下命令即可完成安装。
cap ado uninstall fect

net install fect, all replace from("~/Downloads/fect_stata-master") //macOS

net install fect, all replace from("D:\fect") //Windows
安装好命令后,清除 Stata 内存,并调入测试数据 simdata1 ,为接下来的操作做好准备:
clear

set more off

sysuse simdata1

*note: 如果调用不成功,也可以手动从之前的下载位置打开。

 4   fect 命令介绍
我们先简单介绍一下 fect 命令:
fect outcome [if] , treat(varname) unit(varname) time(varname) [options]
  • outcome :被解释变量
  • treat :分组变量,区分处理组与对照组
  • unit :样本 id
  • time :时间变量
  • options:包括协变量 cov 、估计方法 method 设定和 force 固定效应设定。
现有版本的 fect ,共提供了五种方法进行反事实预测,分别是 : fe(fixed effect)ife(interactive fixed effects) 、mc(matrix completion)bspline(unit-specific bspline) 和 polynomial(unit-specific time treads) 。下面对我们主要对常用的前三种进行详细介绍。
4.1 Fixed Effects (FE)

我们先使用 Fixed Effects 进行反事实预测:
*- Fixed Effects
fect Y, treat(D) unit(id) time(time) cov(X1 X2) method("fe") force("two-way")
cox 中是协变量,method(fe) 是将预测方法设定为 fe ,force 设定固定效应,我们使用双固定效应 two-way
下图展示了 FE 方法 的ATT 的估计结果。观察图中的折线,我们可以发现,在接受处理之后, ATT 出现了明显的跃升,这表明该政策是有效的。而在接受处理之前 (虚线左侧) ,ATT 保持相对平稳,且一直围绕在 0 值附近。图中的条形图部分,则展示了每一期接受处理样本的个数。
如果需要知道 ATT 的精确数值,输入如下命令即可:
. mat list e(ATT)

e(ATT)[1,2]
ATT N
r1 3.4890777 900
每一期的 ATT 则可以通过如下命令获取 (仅展示五期) :
. mat list e(ATTs)

e(ATTs)[47,3]
s n ATT
r1 -31 20 -.77109587
r2 -30 20 -.60864007
r3 -29 20 -.17312063
r4 -28 40 -.46861675
r5 -27 40 -.46439415
我们还可以获取协变量和常数项的具体估计结果:
. mat list e(coefs)

e(coefs)[1,3]
cons X1 X2
r1 10.043207 .92796433 3.0523357

4.2 Interactive Fixed Effects (IFE)

在使用交互固定效应预测反事实时,需要引入不可观测的共同因子。当因子数为 1 时,交互固定效应等价于上文的固定效应方法。默认是存在一个因子,我们也可以使用 r() 设定多个因子。下面我们将因子数设定为 2 ,进行反事实预测:
*- Interactive Fixed Effects
fect Y, treat(D) unit(id) time(time) cov(X1 X2) method("ife") force("two-way") r(2)
下图展示了使用 IFE 方法的 ATT 的估计结果。同样地,我们可以发现,在处理前后, ATT 有着明显的差异。
使用与上文相同的命令,我们也可以获取 ATT 的具体数值、每一期的 ATT ,以及协变量和常数项的估计值:
. mat list e(ATT) //获取 ATT

e(ATT)[1,2]
ATT N
r1 3.4890777 900


. mat list e(ATTs) //获取每一期的 ATT (仅展示五期)

e(ATTs)[47,3]
s n ATT
r1 -31 20 -.77109587
r2 -30 20 -.60864007
r3 -29 20 -.17312063
r4 -28 40 -.46861675
r5 -27 40 -.46439415

. mat list e(coefs) //获取控制变量与常数项的估计值

e(coefs)[1,3]
cons X1 X2
r1 10.043207 .92796433 3.0523357

4.3 Matrix Completion (MC)

MC 方法引入了一个新的参数 lambda ,作为估计时的惩罚项。lambda 默认的数值为 1 ,在下面的估计中,我们将其修改为 0.004, 进行反事实预测:
*- Matrix Completion
fect Y, treat(D) unit(id) time(time) cov(X1 X2) method("mc") lambda(0.004)
下图展示了 MC 方法的 ATT 估计结果。我们可以发现,MC 方法得出的估计值呈现出与 FE 和 IFE 方法相似的时间趋势。
同样地,我们也可以通过以下命令获取 ATT 、每一期的 ATT ,以及控制变量与常数项的估计值:
. mat list e(ATT) //获取 ATT

e(ATT)[1,2]
ATT N
r1 2.5668276 900

. mat list e(ATTs) //获取每一期的 ATT (仅展示五期)

e(ATTs)[47,3]
s n ATT
r1 -31 20 -.07194448
r2 -30 20 -.11271387
r3 -29 20 .23297906
r4 -28 40 -.17737634
r5 -27 40 -.20824151

. mat list e(coefs) //获取控制变量与常数项的估计值

e(coefs)[1,3]
cons X1 X2
r1 11.201599 .94348337 3.0173834

 5   结语
综合上述三种方法的估计结果,我们可以发现,不同方法得出的总体趋势是相似的,但具体的估计值却存在一定的差异。那么,我们该如何抉择呢?选定模型之后,我们又该如何检验其稳健性呢?详细答案,敬请期待下一期推文。
 6   参考资料
  • Licheng Liu, Ye Wang, Yiqing Xu (2019). "Practical Guide to Counterfactual Estimators for Causal Inference with Time-Series Cross-Sectional Data." Working Paper, Stanford University. Available at SSRN: https://papers.ssrn.com/abstract=3555463详细介绍[2]Github主页[3]

友情链接

[1]

-Link-: https://papers.ssrn.com/abstract=3555463

[2]

详细介绍: http://yiqingxu.org/software/fect/stata/fect_md.html

[3]

Github主页: https://github.com/arlionn/fect_stata

本文转载自公众号:连享会(ID:lianxh_cn),作者:连享会。




星标⭐我们不迷路!想要文章及时到,文末“在看”少不了!

点击搜索你感兴趣的内容吧


往期推荐


数据治理 | 数据采集实战:动态网页数据采集

数据资源 | 冬奥火热进行中,企研又双叒叕送数据,体育产业数据等你来拿!

统计计量 | 本周定量原创必读

数据资源 | 喜迎冬奥!免费赠送冰雪产业统计数据!

热点资讯 | 第二轮“双一流”:理论经济学与应用经济学

统计计量 | Stata: 如何检验分组回归后的组间系数差异?

统计计量 | 如何做实证研究及写作论文





数据Seminar




这里是大数据、分析技术与学术研究的三叉路口


推荐 | 彭绮荣


    欢迎扫描👇二维码添加关注    

点击下方“阅读全文”了解更多

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存