This document replicates the Table 4.1 and Figures 4.2 4.4 4.5 found in Mastering Metrics (based on data from Carpenter and Dobkin 2009)

Quick Review[Part 1]

Will adding controls affect diff-in-diff estimates if treatment assignment was random?

What are some standard falsification tests you might want to run with diff-in-diff? Answer

If you find ex-ante differences in treated and treated, is internal validity gone?

Does the absence of a pre-trend in diff-in-diff ensure that differential trends assumption holds and causal inferences can be made?

Answer = Sadly, no. We can never prove causality with 100% confidence. It could be that trend was going to change after treatment for reasons unrelated to treatment

How are triple differences helpful and reducing concerns about violation of parallel trends assumption?

Answer = Before, an “identification policeman” would just need a story about why treated might be trending differently after event for other reasons. Now, he/she would need story about why that different trend would be particularly true for subset of firms that are more sensitive to treatment

Basic idea of RDD

The basic idea of regression discontinuity RDD is the following:

Researcher is interested in how this treatment affects outcome variable of interest, \(y\).

Examples of RDD settings

RDD is like difference-in-difference.

But, RDD is different.

RDD randomization assumption

Two types of RDD Sharp RDD

__ Fuzzy RDD__

Sharp versus Fuzzy RDD

This subtle distinction affects exactly how you estimate the causal effect of treatment

library(AER)
## Loading required package: car
## Loading required package: lmtest
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## 
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## 
## Loading required package: sandwich
## Loading required package: survival
library(foreign)
library(rdd)
## Loading required package: Formula
library(stargazer)
## 
## Please cite as: 
## 
##  Hlavac, Marek (2015). stargazer: Well-Formatted Regression and Summary Statistics Tables.
##  R package version 5.2. http://CRAN.R-project.org/package=stargazer
AEJfigs=read.dta("AEJfigs.dta")
# All = all deaths
AEJfigs$age = AEJfigs$agecell - 21
AEJfigs$over21 = ifelse(AEJfigs$agecell >= 21,1,0)
reg.1=RDestimate(all~agecell,data=AEJfigs,cutpoint = 21)
plot(reg.1)
title(main="All Causes of Death", xlab="AGE",ylab="Mortality rate from all causes (per 100,000)")

summary(reg.1)
## 
## Call:
## RDestimate(formula = all ~ agecell, data = AEJfigs, cutpoint = 21)
## 
## Type:
## sharp 
## 
## Estimates:
##            Bandwidth  Observations  Estimate  Std. Error  z value
## LATE       1.6561     40            9.001     1.480       6.080  
## Half-BW    0.8281     20            9.579     1.914       5.004  
## Double-BW  3.3123     48            7.953     1.278       6.223  
##            Pr(>|z|)      
## LATE       1.199e-09  ***
## Half-BW    5.609e-07  ***
## Double-BW  4.882e-10  ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## F-statistics:
##            F      Num. DoF  Denom. DoF  p        
## LATE       33.08  3         36          3.799e-10
## Half-BW    29.05  3         16          2.078e-06
## Double-BW  32.54  3         44          6.129e-11
reg.2=RDestimate(mva~agecell,data=AEJfigs,cutpoint = 21)
plot(reg.2)
title(main="Motor Vehicle Accidents Death", xlab="AGE",ylab="Mortality rate from all causes (per 100,000)")

reg.3=RDestimate(internal~agecell,data=AEJfigs,cutpoint = 21)
plot(reg.3)
title(main="Internal Causes of Death", xlab="AGE",ylab="Mortality rate from all causes (per 100,000)")

summary(reg.3)
## 
## Call:
## RDestimate(formula = internal ~ agecell, data = AEJfigs, cutpoint = 21)
## 
## Type:
## sharp 
## 
## Estimates:
##            Bandwidth  Observations  Estimate  Std. Error  z value
## LATE       0.8809     22            1.4128    0.8206      1.722  
## Half-BW    0.4405     10            1.8691    1.0203      1.832  
## Double-BW  1.7618     42            0.7652    0.6179      1.239  
##            Pr(>|z|)   
## LATE       0.08513   .
## Half-BW    0.06698   .
## Double-BW  0.21553    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## F-statistics:
##            F       Num. DoF  Denom. DoF  p        
## LATE        6.830  3         18          5.734e-03
## Half-BW     1.765  3          6          5.068e-01
## Double-BW  22.695  3         38          2.750e-08

List of Papers that use RDD