27.17 Applications

Examples in marketing:

Packages in R (see (Thoemmes, Liao, and Jin 2017) for detailed comparisons): all can handle both sharp and fuzzy RD

  • rdd

  • rdrobust estimation, inference and plot

  • rddensity discontinuity in density tests ([Sorting/Bunching/Manipulation]) using local polynomials and binomial test

  • rdlocrand covariate balance, binomial tests, window selection

  • rdmulti multiple cutoffs and multiple scores

  • rdpower power, sample selection

  • rddtools

Package rdd rdrobust rddtools
Coefficient estimator Local linear regression local polynomial regression local polynomial regression
bandwidth selectors (G. Imbens and Kalyanaraman 2012)

(Calonico, Cattaneo, and Farrell 2020)

(G. Imbens and Kalyanaraman 2012)

(Calonico, Cattaneo, and Titiunik 2014)

(G. Imbens and Kalyanaraman 2012)

Kernel functions

  • Triangular

  • Rectangular

Epanechnikov

Gaussian

Epanechnikov Gaussian
Bias Correction Local polynomial regression
Covariate options Include Include

Include

Residuals

Assumptions testing McCrary sorting

McCrary sorting

Equality of covariates distribution and mean

based on table 1 (Thoemmes, Liao, and Jin 2017) (p. 347)

27.17.1 Example 1

Example by Leihua Ye

Yi=β0+β1Xi+β2Wi+ui

Xi={1,Wic0,Wi<c

#cutoff point = 3.5
GPA <- runif(1000, 0, 4)
future_success <- 10 + 2 * GPA + 10 * (GPA >= 3.5) + rnorm(1000)
#install and load the package ‘rddtools’
#install.packages(“rddtools”)
library(rddtools)
data <- rdd_data(future_success, GPA, cutpoint = 3.5)
# plot the dataset
plot(
    data,
    col =  "red",
    cex = 0.1,
    xlab =  "GPA",
    ylab =  "future_success"
)

# estimate the sharp RDD model
rdd_mod <- rdd_reg_lm(rdd_object = data, slope =  "same")
summary(rdd_mod)
#> 
#> Call:
#> lm(formula = y ~ ., data = dat_step1, weights = weights)
#> 
#> Residuals:
#>     Min      1Q  Median      3Q     Max 
#> -3.4147 -0.6768 -0.0202  0.6705  3.3654 
#> 
#> Coefficients:
#>             Estimate Std. Error t value Pr(>|t|)    
#> (Intercept) 17.09347    0.06770  252.48   <2e-16 ***
#> D            9.87709    0.11937   82.74   <2e-16 ***
#> x            2.03202    0.03309   61.42   <2e-16 ***
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#> Residual standard error: 0.9965 on 997 degrees of freedom
#> Multiple R-squared:  0.9606, Adjusted R-squared:  0.9606 
#> F-statistic: 1.217e+04 on 2 and 997 DF,  p-value: < 2.2e-16
# plot the RDD model along with binned observations
plot(
    rdd_mod,
    cex = 0.1,
    col =  "red",
    xlab =  "GPA",
    ylab =  "future_success"
)

27.17.2 Example 2

Bowblis and Smith (2021)

Occupational licensing can either increase or decrease market efficiency:

  • More information means more efficiency

  • Increased entry barriers (i.e., friction) increase efficiency

Components of RD

  • Running variable
  • Cutoff: 120 beds or above
  • Treatment: you have to have the treatment before the cutoff point.

Under OLS

Yi=α0+Xiα1+LWiα2+ϵi

where

  • LWi Licensed/certified workers (in fraction format for each center).

  • Yi = Quality of service

Bias in α2

  • Mitigation-based: terrible quality can lead to more hiring, which negatively bias α2

  • Preference-based: places that have higher quality staff want to keep high quality staffs.

Under RD

Yist=β0+[I(Bed121)ist]β1+f(Sizeist)β2+[f(Sizeist)×I(Bed121)ist]β3+Xitδ+γs+θt+ϵist

where

  • s = state

  • t = year

  • i = hospital

This RD is fuzzy

  • If right near the threshold (bandwidth), we have states with different sorting (i.e., non-random), then we need the fixed-effect for state s. But then your RD assumption wrong anyway, then you won’t do it in the first place

  • Technically, we could also run the fixed-effect regression, but because it’s lower in the causal inference hierarchy. Hence, we don’t do it.

  • Moreover, in the RD framework, we don’t include t before treatment (but in the FE we have to include before and after)

  • If we include πi for each hospital, then we don’t have variation in the causal estimates (because hardly any hospital changes their bed size in the panel)

  • When you have β1 as the intent to treat (because the treatment effect does not coincide with the intent to treat)

  • You cannot take those fuzzy cases out, because it will introduce the selection bias.

  • Note that we cannot drop cases based on behavioral choice (because we will exclude non-compliers), but we can drop when we have particular behaviors ((e.g., people like round numbers).

Thus, we have to use Instrument variable 36.1.3.1

Stage 1:

QSWist=α0+[I(Bed121)ist]α1+f(Sizeist)α2+[f(Sizeist)×I(Bed121)ist]α3+Xitδ+γs+θt+ϵist

(Note: you should have different fixed effects and error term - δ,γs,θt,ϵist from the first equation, but I ran out of Greek letters)

Stage 2:

Yist=γ0+γ1^QWSist+f(Sizeist)δ2+[f(Sizeist)×I(Bed121)]δ3+Xitλ+ηs+τt+uist

  • The bigger the jump (discontinuity), the more similar the 2 coefficients (γ1β1) where γ1 is the average treatment effect (of exposing to the policy)

  • β1 will always be closer to 0 than γ1

  • Figure 1 shows bunching at every 5 units cutoff, but 120 is still out there.

  • If we have manipulable bunching, there should be decrease at 130

  • Since we have limited number of mass points (at the round numbers), we should clustered standard errors by the mass point

27.17.3 Example 3

Replication of (Carpenter and Dobkin 2009) by Philipp Leppert, dataset from here

27.17.4 Example 4

For a detailed application, see (Thoemmes, Liao, and Jin 2017) where they use rdd, rdrobust, rddtools

References

Bowblis, John R, and Austin C Smith. 2021. “Occupational Licensing of Social Services and Nursing Home Quality: A Regression Discontinuity Approach.” ILR Review 74 (1): 199–223.
Calonico, Sebastian, Matias D Cattaneo, and Max H Farrell. 2020. “Optimal Bandwidth Choice for Robust Bias-Corrected Inference in Regression Discontinuity Designs.” The Econometrics Journal 23 (2): 192–210.
Calonico, Sebastian, Matias D Cattaneo, and Rocio Titiunik. 2014. “Robust Nonparametric Confidence Intervals for Regression-Discontinuity Designs.” Econometrica 82 (6): 2295–2326.
Carpenter, Christopher, and Carlos Dobkin. 2009. “The Effect of Alcohol Consumption on Mortality: Regression Discontinuity Evidence from the Minimum Drinking Age.” American Economic Journal: Applied Economics 1 (1): 164–82.
Hartmann, Wesley, Harikesh S Nair, and Sridhar Narayanan. 2011. “Identifying Causal Marketing Mix Effects Using a Regression Discontinuity Design.” Marketing Science 30 (6): 1079–97.
Imbens, Guido, and Karthik Kalyanaraman. 2012. “Optimal Bandwidth Choice for the Regression Discontinuity Estimator.” The Review of Economic Studies 79 (3): 933–59.
Narayanan, Sridhar, and Kirthi Kalyanam. 2015. “Position Effects in Search Advertising and Their Moderators: A Regression Discontinuity Approach.” Marketing Science 34 (3): 388–407.
Thoemmes, Felix, Wang Liao, and Ze Jin. 2017. “The Analysis of the Regression-Discontinuity Design in r.” Journal of Educational and Behavioral Statistics 42 (3): 341–60.