| rdbwhte | R Documentation |
rdbwhte computes MSE- and CER-optimal bandwidths for
estimating RD heterogeneous treatment effects based on covariates
(Calonico, Cattaneo, Farrell, Palomba and Titiunik, 2025a).
Companion commands: rdhte for RD HTE estimation and inference,
and rdhte_lincom for testing linear restrictions of parameters.
A detailed introduction to the software is given in Calonico, Cattaneo, Farrell, Palomba and Titiunik (2025b). Related software packages for analysis and interpretation of RD designs and related methods are available in: https://rdpackages.github.io/.
For background methodology, see Calonico, Cattaneo, Farrell, and Titiunik (2019), Calonico, Cattaneo and Farrell (2020), and Cattaneo and Titiunik (2022).
rdbwhte(
y,
x,
c = 0,
covs.hte = NULL,
covs.eff = NULL,
p = 1,
q = NULL,
kernel = "tri",
weights = NULL,
vce = "hc3",
cluster = NULL,
bwselect = "mserd",
bw.joint = FALSE,
subset = NULL,
data = NULL
)
y |
Outcome variable. |
x |
Running variable. |
c |
RD cutoff in |
covs.hte |
covariates for heterogeneous treatment effects. Factor variables can be used to distinguish between continuous and categorical variables, select reference categories, specify interactions between variables, and include polynomials of continuous variables. |
covs.eff |
additional covariates to be used for efficiency improvements. |
p |
order of the local polynomial used to construct the point estimator (default = 1). |
q |
order of the local polynomial used to construct the bias correction.
If |
kernel |
kernel function used to construct the RD estimators. Options are |
weights |
variable used for optional weighting of the bandwidth-selection procedure. The unit-specific weights multiply the kernel function. |
vce |
character string specifying the variance-covariance matrix
estimator type. Without |
cluster |
variable indicating the clustering of observations. |
bwselect |
bandwidth selection procedure to be used.
Options are:
|
bw.joint |
logical. If |
subset |
optional vector specifying a subset of observations to be used. |
data |
optional data frame. When supplied, |
A list with the following named elements:
W.lev |
Group-level identifiers, or |
W.names |
Display labels for the rows of |
covs.hte_chr |
Character representation of the |
kernel |
Kernel type used. |
vce |
Variance estimator display label. |
vce_select |
Canonical lowercase variance-estimator name. |
c |
Cutoff value. |
h |
An |
p |
Order of the polynomial used for estimation. |
q |
Order of the polynomial used for bias correction. |
bwselect |
Bandwidth selection procedure used. |
N |
Length-2 vector |
Nh |
An |
covs.cont |
Logical; |
rdmodel |
Human-readable model description string. |
Sebastian Calonico, University of California, Davis scalonico@ucdavis.edu.
Matias D. Cattaneo, Princeton University matias.d.cattaneo@gmail.com.
Max H. Farrell, University of California, Santa Barbara mhfarrell@gmail.com.
Filippo Palomba, Princeton University filippo.palomba19@gmail.com.
Rocio Titiunik, Princeton University rocio.titiunik@gmail.com.
Calonico, Cattaneo, Farrell, Palomba and Titiunik (2025): rdhte: Conditional Average Treatment Effects in RD Designs. Working paper.
Calonico, Cattaneo, Farrell, Palomba and Titiunik (2025): Treatment Effect Heterogeneity in Regression Discontinuity Designs. Working paper.
Cattaneo and Titiunik. 2022. Regression Discontinuity Designs. Annual Review of Economics, 14: 821-851.
Calonico, Cattaneo, and Farrell. 2020. Optimal Bandwidth Choice for Robust Bias Corrected Inference in Regression Discontinuity Designs. Econometrics Journal, 23(2): 192-210.
Calonico, Cattaneo, Farrell, and Titiunik. 2019. Regression Discontinuity Designs using Covariates. Review of Economics and Statistics, 101(3): 442-451.
Calonico, Cattaneo, and Titiunik. 2014a. Robust Nonparametric Confidence Intervals for Regression-Discontinuity Designs. Econometrica 82(6): 2295-2326.
Granzier, Pons, and Tricaud. 2023. Coordination and Bandwagon Effects: How Past Rankings Shape the Behavior of Voters and Candidates. American Economic Journal: Applied Economics, 15(4): 177-217.
rdhte, rdhte_lincom
set.seed(123)
n <- 5000
X <- runif(n, -1, 1)
W <- rbinom(n, 1, 0.5)
Y <- 3 + 2*X + 1.5*X^2 + 0.5*X^3 + sin(2*X) + 3*W*(X>=0) + rnorm(n)
rdbwhte.1 = rdbwhte(y=Y, x=X, covs.hte=factor(W))
summary(rdbwhte.1)
## Not run:
data(rdhte_dataset)
with(rdhte_dataset, {
summary(rdbwhte(y = y, x = x, covs.hte = factor(w_ideology),
cluster = cluster_var))
summary(rdbwhte(y = y, x = x, covs.hte = factor(w_ideology),
cluster = cluster_var, bw.joint = TRUE))
summary(rdbwhte(y = y, x = x, covs.hte = w_strength,
cluster = cluster_var))
})
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.