查看原文
其他

前沿_2023年第7期《数量经济技术经济研究》上合成DID、DIDm+csdid估计量等DID前沿主题文章

数量经济学 数量经济学 2023-10-24

推荐1篇2023年第7期《数量经济技术经济研究》上最新DID前沿、合成DID、DIDm+csdid估计量等主题文章


《数量经济技术经济研究》23年第7期上的TOP1 “学术明星”方法如何学习(附方法汇总)


推荐文章:市场激励型环境规制与能源消费结构转型——来自中国碳排放权交易试点的经验证据

背景简介:

为识别碳排放权交易试点对能源消费结构转型的作用效果,将碳排放权交易试点的设立和碳排放权交易市场的启动看作准自然实验。

以除深圳市外的其他6个试点地区作为处理组,24 个 非试点地区(除西藏及港澳台地区外)作为控制组。

选用单时点双重差分模型实证检验试点前后各地区能源消费结构转型进程的变化差异。

设立模型为:

其中

  • TREnergyit表示 t 年 i 省份能源消费结构转型情况;
  • CBMarketit表示 t 年 i 省份是否纳入碳排 放权交易试点并启动碳排放权交易市场
  • 其系数 β 是本文重点关注的,整体衡量试点政策的处理效 应;
  • Controlit是控制变量;
  • μi和 λt为省份固定效应和年份固定效应,
  • εit为随机误差项

DID模型估计

在基准模型设定中,分别考察未加入控制变量、加入省份层面系列控制变量 ,结果均表明碳排放权交易试点显著加速能源消费结构双重替代进程,促进地区能源 消费结构转型。

平行趋势检验

使用事件研究分析方法进行平行趋势检验。

最新的 DID 理论文献表明,处理前趋势检验并不能作为平行趋势假设行之有效的经验证 据(Roth 等,2022),传统的处理前趋势检验在统计意义上是低功效的,且可能造成估计和推断的偏差、扭曲。为此,Rambachan 和 Roth(2023)提出了一种在违反平行趋势假设时的检验方法,其思想 是对处理后点估计量的置信区间进行推断和敏感性分析。


异质性处理效应检验

当处理效应存在异质性时,即使满足平行趋势假设,处理效应的估计结果也会存在偏误,因此本文基于 de Chaisemartin 和 D’Haultfoeuille(2020、2022)提出的多期多个体倍分模型和对应的估计量(DIDM)进行估计。

双重差分法严格依赖“平行趋势”假设,但“平行趋势” 又难以检验,因此本文使用合成双重差分进行后续检验。

其他稳健性检验

本文还进行了其他稳健性检验。包括,

  • 第一,安慰剂检验。重复随机抽样 1000 次,以基准回归模型加以估算。
  • 第二,更换变量定义方式。
  • 第三,改变研究样本和研究方法。运用多时点 DID 进行回归估计,并使用 de Chaisemartin 和 D’Haultfoeuille(2022)提出的动 态效应估计量、Callaway 和 Sant’Anna(2021)提出的重新加权估计(CSDID)以及合成双重差分模型 进行检验。
  • 其他

合成双重差分专题资源

合成双重差分由Arkhangelsky 等(2021) 提出,References如下:

  • Dmitry Arkhangelsky, Susan Athey, David A. Hirshberg, Guido W. Imbens, and Stefan Wager. Synthetic Difference in Differences, 2019.

合成双重差分优点:

Stata合成双重差分专题讲座--PPT截图

  • 相比于传统的合成控制和双重差分方法具有独特优势

  • 相比与传统的合成控制方法,合成双重差分通过引入时间的权重,剔除政策出台前后时间因素导致的差异,降低了估计偏误,也提升了估计的准确性。

  • 而相比于传统的双重差分方法,合成双重差分方法一方面使与处理组更相似的对照组具有更高的权重,另一方面也使与政策处理期更相似的政策处理之前的时间段具备更高的权重,从而使估计结果更具稳健性。

合成双重差分的实施流程具体如下:

  • 第一,确定个体的权重。

  • 第二,确定时间的权重。

  • 第三,计算政策的处理效应。

  • 总结如下

Stata合成双重差分专题PPT截图


基于个体权重和时间权重,利用加权的双向固定效应模型进行估计,得到政策的平均处理效应。

合成双重差分操作及应用

合成DID操作及Stata应用

sdid—Stata中合成双重差分

继Arkhangelsky等人(2021年)之后,该Stata包实现了综合双重差分估计过程,以及一系列推断和绘图过程。Arkhangelsky等人提供了一个使用R的代码实现,这里附带了一些材料:synthdid。这里我们提供了一个原生的Stata实现,主要是用Mata编写的。这个包扩展了原始R包的功能,允许非常简单地在多个处理阶段交错采用的上下文中进行评估(以及在原始代码的单个采用阶段)。

安装到Stata

ssc install sdid

语法格式

sdid Y S T D, vce(method) seed(#) reps(#) covariates(varlist [, method]) 
graph g1_opt(string) g2_opt(string) unstandardized graph_export([stub] , type)

选项含义:

Y:结果变量(数值)

S:单位变量(数字或字符串)

T:时间变量(数值)

D:处理的虚拟,如果单位被处理,则为1,否则为0(数字)

vce (): bootstrap, jackknife,安慰剂标准误差。

seed():伪随机数的种子定义。

reps(#):重复bootstrap和安慰剂。

covariates(varlist [, method]):用于调整y的协变量。应包含协变量的varlist,并可选用于调整方法的选项。在这种情况下,它可以遵循Arkhangelsky等人提出的方法进行“优化”,在这种情况下,它可以遵循Kranz, 2021 (xsynth在R中)提出的程序。在没有指定方法的情况下,默认使用“优化”。克兰兹已经证明投影法在许多情况下是可取的。在这个实现中,投影的方法通常要快得多。

graph:如果指定了该选项,将显示单位和时间权重以及结果趋势的图形,如Arkhangelsky等人的图1。

g1_opt(string) g2_opt(string):选项,用于修改上述图形的外观。G1为单位权重图,g2为结果趋势图。请求的选项必须遵循Stata的twoway_options的语法。

unstandardized:如果包含了控制,并且指定了“优化”方法,在找到最优权重之前,控制将被标准化为z分数。这避免了控制变量具有高度离散时的优化问题。如果指定了非标准化,则只需输入控件的原始单位。应该谨慎使用这个选项。

graph_export([stub], type):使用这个选项可以将生成的图形保存到磁盘。每个单位权重和结果趋势将分别保存为weightsYYYY和trendsYYYY, YYYY表示每个治疗采用期。每个治疗采用阶段将生成两个图表。如果指定了该选项,则必须指定type,它指的是一个有效的Stata图形类型(例如"。Eps ", ".pdf"等等)。可选地,可以指定一个存根,在这种情况下,它将被放在导出的图形名称的前面。

案例1

一个基于提案99 (Abadie et al., 2010)的例子,只有一个采用日期。加载Abadie et al.(2010)数据:


. use "C:\Users\Metrics\Desktop\prop99_example.dta"

使用sdid进行估计,导出权重和趋势图:


. sdid packspercapita state year treated, vce(placebo) seed(1213) graph g1_opt(xtitle("")) g2_



案例2

基于议会性别配额、议会中的女性和孕产妇死亡率的交错采用设计实例(Bhalotra等人,2020年)。数据加载:

use "C:\Users\Metrics\Desktop\quota_example.dta"

运行没有协变量和引导标准误差的估计

sdid womparl country year quota, vce(bootstrap) seed(1213)

以投影的方式使用协变量运行sdid

sdid womparl country year quota, vce(bootstrap) seed(1213) covariates(lngdp, projected)




R软件安装

当前的开发版本可以使用devtools从源代码安装。


devtools: install_github(“synth-inference / synthdid”)

R语言版本:Example

library(synthdid)

# Estimate the effect of California Proposition 99 on cigarette consumption
data('california_prop99')
setup = panel.matrices(california_prop99)
tau.hat = synthdid_estimate(setup$Y, setup$N0, setup$T0)
se = sqrt(vcov(tau.hat, method='placebo'))
sprintf('point estimate: %1.2f', tau.hat)
sprintf('95%% CI (%1.2f, %1.2f)', tau.hat - 1.96 * se, tau.hat + 1.96 * se)
plot(tau.hat)

References

Dmitry Arkhangelsky, Susan Athey, David A. Hirshberg, Guido W. Imbens, and Stefan Wager. Synthetic Difference in Differences, 2019.‘’

2023年Stata暑假班

360度无死角全面掌握传统DID+交叠DID+多期DID+空间DID+合成DID等前沿模型


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

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