Package 'rdmulti'

Title: Analysis of RD Designs with Multiple Cutoffs or Scores
Description: The regression discontinuity (RD) design is a popular quasi-experimental design for causal inference and policy evaluation. The 'rdmulti' package provides tools to analyze RD designs with multiple cutoffs or scores: rdmc() estimates pooled and cutoff specific effects for multi-cutoff designs, rdmcplot() draws RD plots for multi-cutoff designs and rdms() estimates effects in cumulative cutoffs or multi-score designs. See Cattaneo, Titiunik and Vazquez-Bare (2020) <https://rdpackages.github.io/references/Cattaneo-Titiunik-VazquezBare_2020_Stata.pdf> for further methodological details.
Authors: Matias D. Cattaneo, Rocio Titiunik, Gonzalo Vazquez-Bare
Maintainer: Gonzalo Vazquez-Bare <[email protected]>
License: GPL-2
Version: 1.1
Built: 2024-11-12 03:25:03 UTC
Source: https://github.com/cran/rdmulti

Help Index


rdmulti: analysis of RD Designs with multiple cutoffs or scores

Description

The regression discontinuity (RD) design is a popular quasi-experimental design for causal inference and policy evaluation. The 'rdmulti' package provides tools to analyze RD designs with multiple cutoffs or scores: rdmc() estimates pooled and cutoff-specific effects in multi-cutoff designs, rdmcplot() draws RD plots for multi-cutoff RD designs and rdms() estimates effects in cumulative cutoffs or multi-score designs. For more details, and related Stata and R packages useful for analysis of RD designs, visit https://rdpackages.github.io/.

Author(s)

Matias Cattaneo, Princeton University. [email protected]

Rocio Titiunik, Princeton University. [email protected]

Gonzalo Vazquez-Bare, UC Santa Barbara. [email protected]

References

Calonico, S., M.D. Cattaneo, M. Farrell and R. Titiunik. (2017). rdrobust: Software for Regression Discontinuity Designs. Stata Journal 17(2): 372-404.

Calonico, S., M.D. Cattaneo, and R. Titiunik. (2014). Robust Data-Driven Inference in the Regression-Discontinuity Design. Stata Journal 14(4): 909-946.

Calonico, S., M.D. Cattaneo, and R. Titiunik. (2015). rdrobust: An R Package for Robust Nonparametric Inference in Regression-Discontinuity Designs. R Journal 7(1): 38-51.

Cattaneo, M.D., L. Keele, R. Titiunik and G. Vazquez-Bare. (2016). Interpreting Regression Discontinuity Designs with Multiple Cutoffs. Journal of Politics 78(4): 1229-1248.

Cattaneo, M.D., L. Keele, R. Titiunik and G. Vazquez-Bare. (2020). Extrapolating Treatment Effects in Multi-Cutoff Regression Discontinuity Designs. Journal of the American Statistical Association 116(536): 1941, 1952.

Cattaneo, M.D., R. Titiunik and G. Vazquez-Bare. (2020). Analysis of Regression Discontinuity Designs with Multiple Cutoffs or Multiple Scores. Stata Journal 20(4): 866-891.

Keele, L. and R. Titiunik. (2015). Geographic Boundaries as Regression Discontinuities. Political Analysis 23(1): 127-155


Analysis of RD designs with multiple cutoffs

Description

rdmc() analyzes RD designs with multiple cutoffs.

Usage

rdmc(
  Y,
  X,
  C,
  fuzzy = NULL,
  derivvec = NULL,
  pooled_opt = NULL,
  verbose = FALSE,
  pvec = NULL,
  qvec = NULL,
  hmat = NULL,
  bmat = NULL,
  rhovec = NULL,
  covs_mat = NULL,
  covs_list = NULL,
  covs_dropvec = NULL,
  kernelvec = NULL,
  weightsvec = NULL,
  bwselectvec = NULL,
  scaleparvec = NULL,
  scaleregulvec = NULL,
  masspointsvec = NULL,
  bwcheckvec = NULL,
  bwrestrictvec = NULL,
  stdvarsvec = NULL,
  vcevec = NULL,
  nnmatchvec = NULL,
  cluster = NULL,
  level = 95,
  plot = FALSE,
  conventional = FALSE
)

Arguments

Y

outcome variable.

X

running variable.

C

cutoff variable.

fuzzy

specifies a fuzzy design. See rdrobust() for details.

derivvec

vector of cutoff-specific order of derivatives. See rdrobust() for details.

pooled_opt

options to be passed to rdrobust() to calculate pooled estimand.

verbose

displays the output from rdrobust for estimating the pooled estimand.

pvec

vector of cutoff-specific polynomial orders. See rdrobust() for details.

qvec

vector of cutoff-specific polynomial orders for bias estimation. See rdrobust() for details.

hmat

matrix of cutoff-specific bandwidths. See rdrobust() for details.

bmat

matrix of cutoff-specific bandwidths for bias estimation. See rdrobust() for details.

rhovec

vector of cutoff-specific values of rho. See rdrobust() for details.

covs_mat

matrix of covariates. See rdrobust() for details.

covs_list

list of covariates to be used in each cutoff.

covs_dropvec

vector indicating whether collinear covariates should be dropped at each cutoff. See rdrobust() for details.

kernelvec

vector of cutoff-specific kernels. See rdrobust() for details.

weightsvec

vector of length equal to the number of cutoffs indicating the names of the variables to be used as weights in each cutoff. See rdrobust() for details.

bwselectvec

vector of cutoff-specific bandwidth selection methods. See rdrobust() for details.

scaleparvec

vector of cutoff-specific scale parameters. See rdrobust() for details.

scaleregulvec

vector of cutoff-specific scale regularization parameters. See rdrobust() for details.

masspointsvec

vector indicating how to handle repeated values at each cutoff. See rdrobust() for details.

bwcheckvec

vector indicating the value of bwcheck at each cutoff. See rdrobust() for details.

bwrestrictvec

vector indicating whether computed bandwidths are restricted to the range or runvar at each cutoff. See rdrobust() for details.

stdvarsvec

vector indicating whether variables are standardized at each cutoff. See rdrobust() for details.

vcevec

vector of cutoff-specific variance-covariance estimation methods. See rdrobust() for details.

nnmatchvec

vector of cutoff-specific nearest neighbors for variance estimation. See rdrobust() for details.

cluster

cluster ID variable. See rdrobust() for details.

level

confidence level for confidence intervals. See rdrobust() for details.

plot

plots cutoff-specific estimates and weights.

conventional

reports conventional, instead of robust-bias corrected, p-values and confidence intervals.

Value

tau

pooled estimate

se.rb

robust bias corrected standard error for pooled estimate

pv.rb

robust bias corrected p-value for pooled estimate

ci.rb.l

left limit of robust bias corrected CI for pooled estimate

ci.rb.r

right limit of robust bias corrected CI for pooled estimate

hl

bandwidth to the left of the cutoff for pooled estimate

hr

bandwidth to the right of the cutofffor pooled estimate

Nhl

sample size within bandwidth to the left of the cutoff for pooled estimate

Nhr

sample size within bandwidth to the right of the cutoff for pooled estimate

B

vector of bias-corrected estimates

V

vector of robust variances of the estimates

Coefs

vector of conventional estimates

W

vector of weights for each cutoff-specific estimate

Nh

vector of sample sizes within bandwidth

CI

robust bias-corrected confidence intervals

H

matrix of bandwidths

Pv

vector of robust p-values

rdrobust.results

results from rdrobust for pooled estimate

cfail

Cutoffs where rdrobust() encountered problems

Author(s)

Matias Cattaneo, Princeton University. [email protected]

Rocio Titiunik, Princeton University. [email protected]

Gonzalo Vazquez-Bare, UC Santa Barbara. [email protected]

References

Cattaneo, M.D., R. Titiunik and G. Vazquez-Bare. (2020). Analysis of Regression Discontinuity Designs with Multiple Cutoffs or Multiple Scores. Stata Journal, forthcoming.

Examples

# Toy dataset
X <- runif(1000,0,100)
C <- c(rep(33,500),rep(66,500))
Y <- (1 + X + (X>=C))*(C==33)+(.5 + .5*X + .8*(X>=C))*(C==66) + rnorm(1000)
# rdmc with standard syntax
tmp <- rdmc(Y,X,C)

RD plots with multiple cutoffs.

Description

rdmcplot() RD plots with multiple cutoffs.

Usage

rdmcplot(
  Y,
  X,
  C,
  nbinsmat = NULL,
  binselectvec = NULL,
  scalevec = NULL,
  supportmat = NULL,
  pvec = NULL,
  hmat = NULL,
  kernelvec = NULL,
  weightsvec = NULL,
  covs_mat = NULL,
  covs_list = NULL,
  covs_evalvec = NULL,
  covs_dropvec = NULL,
  ci = NULL,
  col_bins = NULL,
  pch_bins = NULL,
  col_poly = NULL,
  lty_poly = NULL,
  col_xline = NULL,
  lty_xline = NULL,
  nobins = FALSE,
  nopoly = FALSE,
  noxline = FALSE,
  nodraw = FALSE
)

Arguments

Y

outcome variable.

X

running variable.

C

cutoff variable.

nbinsmat

matrix of cutoff-specific number of bins. See rdplot() for details.

binselectvec

vector of cutoff-specific bins selection method. See rdplot() for details.

scalevec

vector of cutoff-specific scale factors. See rdplot() for details.

supportmat

matrix of cutoff-specific support conditions. See rdplot() for details..

pvec

vector of cutoff-specific polynomial orders. See rdplot() for details.

hmat

matrix of cutoff-specific bandwidths. See rdplot() for details.

kernelvec

vector of cutoff-specific kernels. See rdplot() for details.

weightsvec

vector of cutoff-specific weights. See rdplot() for details.

covs_mat

matrix of covariates. See rdplot() for details.

covs_list

list of of covariates to be used in each cutoff.

covs_evalvec

vector indicating the evaluation point for additional covariates. See rdrobust() for details.

covs_dropvec

vector indicating whether collinear covariates should be dropped at each cutoff. See rdrobust() for details.

ci

adds confidence intervals of the specified level to the plot. See rdrobust() for details.

col_bins

vector of colors for bins.

pch_bins

vector of characters (pch) type for bins.

col_poly

vector of colors for polynomial curves.

lty_poly

vector of lty for polynomial curves.

col_xline

vector of colors for vertical lines.

lty_xline

vector of lty for vertical lines.

nobins

omits bins plot.

nopoly

omits polynomial curve plot.

noxline

omits vertical lines indicating the cutoffs.

nodraw

omits plot.

Value

clist

list of cutoffs

cnum

number of cutoffs

X0

matrix of X values for control units

X1

matrix of X values for treated units

Yhat0

estimated polynomial for control units

Yhat1

estimated polynomial for treated units

Xmean

bin average of X values

Ymean

bin average for Y values

CI_l

lower end of confidence intervals

CI_r

upper end of confidence intervals

cfail

Cutoffs where rdrobust() encountered problems

Author(s)

Matias Cattaneo, Princeton University. [email protected]

Rocio Titiunik, Princeton University. [email protected]

Gonzalo Vazquez-Bare, UC Santa Barbara. [email protected]

References

Cattaneo, M.D., R. Titiunik and G. Vazquez-Bare. (2020). Analysis of Regression Discontinuity Designs with Multiple Cutoffs or Multiple Scores. Stata Journal, forthcoming.

Examples

# Toy dataset
X <- runif(1000,0,100)
C <- c(rep(33,500),rep(66,500))
Y <- (1 + X + (X>=C))*(C==33)+(.5 + .5*X + .8*(X>=C))*(C==66) + rnorm(1000)
# rdmcplot with standard syntax
tmp <- rdmcplot(Y,X,C)

Analysis of RD designs with cumulative cutoffs or two running variables

Description

rdms() analyzes RD designs with cumulative cutoffs or two running variables.

Usage

rdms(
  Y,
  X,
  C,
  X2 = NULL,
  zvar = NULL,
  C2 = NULL,
  rangemat = NULL,
  xnorm = NULL,
  fuzzy = NULL,
  derivvec = NULL,
  pooled_opt = NULL,
  pvec = NULL,
  qvec = NULL,
  hmat = NULL,
  bmat = NULL,
  rhovec = NULL,
  covs_mat = NULL,
  covs_list = NULL,
  covs_dropvec = NULL,
  kernelvec = NULL,
  weightsvec = NULL,
  bwselectvec = NULL,
  scaleparvec = NULL,
  scaleregulvec = NULL,
  masspointsvec = NULL,
  bwcheckvec = NULL,
  bwrestrictvec = NULL,
  stdvarsvec = NULL,
  vcevec = NULL,
  nnmatchvec = NULL,
  cluster = NULL,
  level = 95,
  plot = FALSE,
  conventional = FALSE
)

Arguments

Y

outcome variable.

X

running variable.

C

vector of cutoffs.

X2

if specified, second running variable.

zvar

if X2 is specified, treatment indicator.

C2

if specified, second vector of cutoffs.

rangemat

matrix of cutoff-specific ranges for the running variable.

xnorm

normalized running variable to estimate pooled effect.

fuzzy

specifies a fuzzy design. See rdrobust() for details.

derivvec

vector of cutoff-specific order of derivatives. See rdrobust() for details.

pooled_opt

options to be passed to rdrobust() to calculate pooled estimand.

pvec

vector of cutoff-specific polynomial orders. See rdrobust() for details.

qvec

vector of cutoff-specific polynomial orders for bias estimation. See rdrobust() for details.

hmat

matrix of cutoff-specific bandwidths. See rdrobust() for details.

bmat

matrix of cutoff-specific bandwidths for bias estimation. See rdrobust() for details.

rhovec

vector of cutoff-specific values of rho. See rdrobust() for details.

covs_mat

matrix of covariates. See rdplot() for details.

covs_list

list of of covariates to be used in each cutoff.

covs_dropvec

vector indicating whether collinear covariates should be dropped at each cutoff. See rdrobust() for details.

kernelvec

vector of cutoff-specific kernels. See rdrobust() for details.

weightsvec

vector of length equal to the number of cutoffs indicating the names of the variables to be used as weights in each cutoff. See rdrobust() for details.

bwselectvec

vector of cutoff-specific bandwidth selection methods. See rdrobust() for details.

scaleparvec

vector of cutoff-specific scale parameters. See rdrobust() for details.

scaleregulvec

vector of cutoff-specific scale regularization parameters. See rdrobust() for details.

masspointsvec

vector indicating how to handle repeated values at each cutoff. See rdrobust() for details.

bwcheckvec

vector indicating the value of bwcheck at each cutoff. See rdrobust() for details.

bwrestrictvec

vector indicating whether computed bandwidths are restricted to the range or runvar at each cutoff. See rdrobust() for details.

stdvarsvec

vector indicating whether variables are standardized at each cutoff. See rdrobust() for details.

vcevec

vector of cutoff-specific variance-covariance estimation methods. See rdrobust() for details.

nnmatchvec

vector of cutoff-specific nearest neighbors for variance estimation. See rdrobust() for details.

cluster

cluster ID variable. See rdrobust() for details.

level

confidence level for confidence intervals. See rdrobust() for details.

plot

plots cutoff-specific and pooled estimates.

conventional

reports conventional, instead of robust-bias corrected, p-values and confidence intervals.

Value

B

vector of bias-corrected coefficients

V

variance-covariance matrix of the estimators

Coefs

vector of conventional coefficients

Nh

vector of sample sizes within bandwidth at each cutoff

CI

bias corrected confidence intervals

H

bandwidth used at each cutoff

Pv

vector of robust p-values

Author(s)

Matias Cattaneo, Princeton University. [email protected]

Rocio Titiunik, Princeton University. [email protected]

Gonzalo Vazquez-Bare, UC Santa Barbara. [email protected]

References

Cattaneo, M.D., R. Titiunik and G. Vazquez-Bare. (2020). Analysis of Regression Discontinuity Designs with Multiple Cutoffs or Multiple Scores. Stata Journal, forthcoming.

Examples

# Toy dataset: cumulative cutoffs
X <- runif(1000,0,100)
C <- c(33,66)
Y <- (1+X)*(X<C[1])+(0.8+0.8*X)*(X>=C[1]&X<C[2])+(1.2+1.2*X)*(X>=C[2]) + rnorm(1000)
# rmds: basic syntax
tmp <- rdms(Y,X,C)