【应用计量系列146】Sant' Anna的DID规定动作(2):每类处理中处理个体数

文摘   2024-06-28 07:30   广东  

CIMERS暑期班,因果推断最新进展+量化宏观,全新回归!


👉面板数据模型(DID等)最新进展及其stata应用,点击查看

👉DSGE第一课与Dynare编程,点击查看


成为CIMERS内部学员,你可以获得

⭐ 高质量课程,详细课件,可复用代码及数据

⭐ 许老师详尽答疑服务,知无不言,学无止境

⭐ 高质量的交流社群(主要为硕博以及高校教师)

⭐ 许老师增值讲座,文献解读,模型讲解

⭐ 未来课程内部学员折扣

⭐⭐诚邀您加入CIMERS,许老师正在寻找好的合作者,一起作出高质量研究⭐⭐

报名任意课程即可成为CIMERS内部学员



恳请各位老师同学动动发顶刊的小手,点个赞和在看,让更多人看到我们的研究,您的支持是CIMERS最大的动力!





从今天开始,我们搬运Scott Cunningham的“Pedro’s diff in diff checklist”【有兴趣的人可以点击这里关注他的blog】。

大家也许还记得,Sant' Anna有一个十步DID

第一步:画出处理模式图

今天的第二步利用Aneja, Donohue and Zhang (2011,AER)的数据。美国FBI从1930年开始实施UCR项目,旨在建立可信的犯罪统计数据。UCR包括来自18000家执法部门的数据,这些机构都是自愿参与,因此,并不会完全合作。例如,有一些机构每个月上报完整的数据,有的机构一年才上报一次,有的数据有缺失,有的甚至一点数据没有。尽管如此,UCR项目仍然是美国犯罪记录最全的数据库,记录了关键的犯罪和政策干预等等信息。

作者用1970-2007年的51个地区数据。

step 0:创建初次处理日期变量

我们要创建初次处理日期变量。主要并不是处理变量。也就是说,政策实施初次实施年份设定为1,否则为0。这个变量在很多交叠DID估计量中被称为cohort变量,例如CSDID。需要注意的是,如果个体从未处理,那么,我们也需要用0来指代缺失处理日期。

clear all
capture log close


use "/Users/xuwenli/Library/CloudStorage/OneDrive-个人/DSGE建模及软件编程/教学大纲与讲稿/应用计量经济学讲稿/应用计量经济学讲稿与code/data/mixtape/concealed_carry_state.dta", clear

* Load packages needed for panelView
* net install grc1leg, from(http://www.stata.com/users/vwiggins) replace
* net install gr0075, from(http://www.stata-journal.com/software/sj18-4) replace
* ssc install labutil, replace
* ssc install sencode, replace
* cap ado uninstall panelview //in-case already installed
* net install panelview, all replace from("https://yiqingxu.org/packages/panelview_stata")

* Generate a treatment date variable
gen treat_date = 2020 // never treated
replace treat_date = 1970 if shalll==1 & aftr==0 // always treated
replace treat_date = 1994 if fipsstat==2 // treatment cohorts
replace treat_date = 1994 if fipsstat==4
replace treat_date = 1995 if fipsstat==5
replace treat_date = 2003 if fipsstat==8
replace treat_date = 1987 if fipsstat==12
replace treat_date = 1989 if fipsstat==13
replace treat_date = 1990 if fipsstat==16
replace treat_date = 1980 if fipsstat==18
replace treat_date = 2006 if fipsstat==20
replace treat_date = 1996 if fipsstat==21
replace treat_date = 1996 if fipsstat==22
replace treat_date = 1985 if fipsstat==23
replace treat_date = 2001 if fipsstat==26
replace treat_date = 2003 if fipsstat==27
replace treat_date = 1990 if fipsstat==28
replace treat_date = 2003 if fipsstat==29
replace treat_date = 1991 if fipsstat==30
replace treat_date = 2006 if fipsstat==31
replace treat_date = 1995 if fipsstat==32
replace treat_date = 2003 if fipsstat==35
replace treat_date = 1995 if fipsstat==37
replace treat_date = 2004 if fipsstat==39
replace treat_date = 1995 if fipsstat==40
replace treat_date = 1990 if fipsstat==41
replace treat_date = 1989 if fipsstat==42
replace treat_date = 1996 if fipsstat==45
replace treat_date = 1994 if fipsstat==47
replace treat_date = 1995 if fipsstat==48
replace treat_date = 1995 if fipsstat==49
replace treat_date = 1988 if fipsstat==51
replace treat_date = 1989 if fipsstat==54
replace treat_date = 1994 if fipsstat==56

// Define the labels for each unique value
label define treat_date_lbl 2020 "never treated" ///
1970 "always treated" ///
1980 "1980 cohort" ///
1985 "1985 cohort" ///
1987 "1987 cohort" ///
1988 "1988 cohort" ///
1989 "1989 cohort" ///
1990 "1990 cohort" ///
1991 "1991 cohort" ///
1994 "1994 cohort" ///
1995 "1995 cohort" ///
1996 "1996 cohort" ///
2001 "2001 cohort" ///
2003 "2003 cohort" ///
2004 "2004 cohort" ///
2006 "2006 cohort"

// Assign the labels to the treat_date variable
label values treat_date treat_date_lbl

drop if state==""
encode state, gen(id)

gen treat = 0
replace treat=1 if year>=treat_date

第一步:画出处理模式图:

* Visualizing rollouts to count the number of units in a cohort.
panelview lmur treat, prepost bytiming i(state) t(year) type(treat) xtitle("Year") ytitle("State") title("Treatment Status by Timing Group") legend(label(1 "Never treated") label(2 "Treated (Pre)") label(3 "Treated (Post)"))
image.png

第二步:每类的处理个体数量

这一步就是数数,数出每一类(初次处理类别)中有多少处理个体。我们可以用表格的形式呈现这些结果。

// Tabulate treat_date for the year 1970
tabulate treat_date if year == 1970, matcell(freq) matrow(names)

image.png

也许我们也想展示每类处理中包含哪些个体,也就是个体的名字:

* Get state names by treat_date for the year 1970
levelsof treat_date, local(treat_dates)

foreach x in `treat_dates' {
display "Treatment date: `x'"
tabulate state if treat_date == `x'
}

* Copy output and give it to ChatGPT-4o to make a pretty table for us in LaTeX as I'm too lazy to do it here.

上面输出的结果很多,所以Cunningham建议用GPT来直接输出Latex命令。



注:(1)相关讲稿、Slides和stata do文件在许文立老师的github及其主页上公布。

(2)CIMERS学员/付费会员注意后续线上讲座通知。

(3)更多计量和stata内容,请参见经验分析方法及Stata命令汇总

71、【应用计量系列71】断点回归(1):概述

72、【应用计量系列72】断点回归(2):丝滑世界里找“跳跃”

73、【应用计量系列73】交叠DID估计量 :stata包csdid升级版

74、【应用计量系列74】控制组群固定效应还是个体固定效应?

75、【应用计量系列75】合成控制法的新推断框架和stata应用

76、【应用计量系列76】平行趋势的秘密(一):平行趋势假设的类型

77、【应用计量系列77】平行趋势的秘密(二):明知不可为而为之

78、【应用计量系列78】断点回归(3):分离不分家

79、【应用计量系列79】平行趋势的秘密(三):如何给平行趋势假设提供经验证据?

80、【香樟推文2663】破产改革的经济后果

81、【应用计量系列81】平行趋势的秘密(四):如何给平行趋势假设提供经验证据?

82、【应用计量系列82】因果推断中的纠偏机器学习方法(DDML)

83、【应用计量系列83】还在取log(Y)?

84、【应用计量系列84】断点回归(4):最新进展

85、【应用计量系列85】DID最新文献:共同相关效应DID(CCE-DID)

86、【应用计量系列86】新DID的Stata包升级版csdid2

87、【书籍推荐】断点回归的实践指南:扩展(2023年版)

88、【应用计量系列88】考虑空间溢出效应的DID

89、【应用计量系列89】我们要控制什么变量?

90、【应用计量系列90】Stata初见(一)

91、【应用计量系列91】因果效应推断概述

92、【应用计量系列92】事件研究对平行趋势假设检验的效力及stata操作

93、【应用计量系列93】因果效应推断概述(二)

94、【应用计量系列94】因果效应推断概述课后作业:随机实验分析

95、【应用计量系列95】匹配估计量(1):小小的匹配从来没有伤害过任何人

96、【应用计量系统95】随机实验课后作业答案

97、【应用计量系列97】匹配估计量(2):条件独立性假设、敏感性检验及stata操作

98、【应用计量系列98】检验线性回归中恰当的聚类水平

99、【应用计量系统99】匹配估计量(3):精确匹配与共同支持假设

100、【应用计量系列100】最新的交错处理效应估计量:随机交错处理下,更有效率的估计量及其stata操作

101、【应用计量系列101】Stata 18新功能(1):异质性处理效应

102、【应用计量系列102】stata 18新功能(2):培根分解

103、【应用计量系列103】一文读懂线性回归的标准误与stata应用

【计量课程slides分享】应用计量概述

【应用计量系列100】随机交错处理下,更有效率的估计量及其stata操作(Update)

104、【应用计量系列104】匹配估计量(4)

105、【应用计量系列105】DID  Handbook(持续更新)

106、【应用计量系列106】标准误太大,系数不显著?也许弄错了标准误的来源

107、【应用计量系列107】动态合成双重差分及stata操作

108、【应用计量系列108】异质性处理效应稳健估计量:dCDH估计量


109、【应用计量系列109】合成双重差分(SDID)估计量的使用要求
110、【应用计量系列110】标准误哪家强,stata命令找金兰(MacKinnon)
111、【应用计量系列111】CSDID的有效样本与协变量
112、【应用计量系列112】合成控制法什么时候有效?用因子模型解读合成控制法及其最新理论进展
113、【应用计量系列113】我们应该控制哪个层级的固定效应?
114、【应用计量系列114】事件研究法实践指南
115【应用计量系列115】事件研究实践指南:扩展、挑战与应对之法
116、【应用计量系列116】稳健性检验和实证分析的一些经验
117、【应用计量系列117】弱IV的推断问题

118、【应用计量系列118】《双重差分法的最新理论进展与经验研究新趋势》附录B

119、【应用计量系列119】DID的平行趋势,真的理解,并会用了吗?兼论平行趋势敏感性检验及其stata应用

120、【应用计量系列120】为什么不用CiC估计量?

【最新计量课件分享】IV及其最新进展与应用

【更新】《应用计量经济学讲稿》

121、【应用计量系列121】工具变量的强弱检验与stata应用

122、【应用计量系列122】最新异质性处理效应估计量:局部投影法DID的stata命令与例子

123、【应用计量系列123】进入退出DID的稳健估计量和stata例子

【资料分享】面板数据的因果推断:DID和SC的统一

124、【应用计量系列124】DID:面板数据与重复截面数据

125、【应用计量系列125】新DID估计量怎么选?

126、【应用计量系列126】新DID的事件研究图,理解对了吗?

127、【应用计量系列 127】新 DID 的事件研究图,理解对了呀?(续)

128、【应用计量系列 128】一图知因果:因果推断方法选择流程图

129、【应用计量系列129】堆叠DID(stacked DID)及其应用

130、【应用计量系列130】春节假期读的DID新论文列表

131、【应用计量系列131】不平行的DD,平行的DDD与stata应用

132、【应用计量经济系列 132】stata 中固定效应模型的命令注意事项

133、【应用计量系列 133】不要这么用异质性处理效应稳健估计量

134、【应用计量系列 134】DID 的规定动作

135、【应用计量系列 135】DID 的平行趋势支持证据的安慰剂检验

136、【应用计量系列 136】 IV 的实践应用指导初探

137、【应用计量系列137】连续DID的异质性处理效应与stata操作(升级版)

138、【应用计量系列138】推荐多看看Jeff老爷子的东西

139、【应用计量系列 139】csdid 使用注意事项

140、【应用计量系列 140】Sant' Anna: DID Check List

一篇论文带你搞懂,写出高质量DID文章完整过程!

141、【应用计量系列141】DID的稳健性检验:不可观测的混淆因子-SIV(理论篇)

142、【应用计量系列142】Bartik IV/SSIV到底要怎么应用?

143、【应用计量系列143】交叠DDD的分解与偏误

144、【应用计量系列 144】DID 中的标准误问题

145、【应用计量系列145】Sant' Anna的DID规定动作(1):处理模式图



点击蓝色链接,即可查看详细课程大纲

👉因果推断1(DID,SC,ES)

👉因果推断2(DID平行趋势检验,RD)


👉DSGE基准模型与Dynare编程入门

👉异质性代理人模型与应用

👉绿色金融DSGE


CIMERS在线课程列表


因果推断系列视频课程主要内容包括:

(1)DID、交叠DID及其stata案例;

(2)事件研究及其stata案例;

(3)合成控制法及其stata案例;

(4)平行趋势检验及其stata案例

(5)断点回归及其stata案例


DSGE基准模型与Dynare编程入门

(1)实际经济周期模型(RBC)

(2)新凯恩斯主义模型(NK)

(3)金融中介

(4)环境DSGE模型

(5)劳动市场搜寻与匹配模型

(6)开放经济DSGE模型


异质性代理人模型与应用

(1)投资资产定价模型

(2)数值算法

(3)宏观金融前沿课题


绿色金融DSGE

(1)金融摩擦的DSGE模型:抵押约束、BGG、金融机构

(2)环境DSGE

(3)绿色金融DSGE





成为CIMERS内部学员,你可以获得

⭐高质量视频课程,详细课件资料,可复用代码及数据

⭐许老师详尽的答疑服务,知无不言,学无止境

⭐高质量的交流社群(主要为硕博以及高校教师)

⭐许老师增值讲座,包括但不限于文献解读,模型讲解


⭐⭐诚邀您加入CIMERS,许老师正在寻找好的合作者,一起作出高质量研究⭐⭐


咨询购买请联系

联系人:吴峰宇老师

联系电话:184 7751 1575

联系邮箱:cimers_dsge@econmod.cn

其它事项:可开具培训、技术服务、咨询等类型的增值税普票

更多课程信息,扫描下方二维码咨询:



特别提醒:非诚勿扰!


宏观研学会
关注宏观经济与宏观经济学研究前沿问题,推广、普及DSGE及其他宏观经济研究方法。
 最新文章