# rdrandinf

##### Randomization Inference for RD Designs under Local Randomization

`rdrandinf`

implements randomization inference and related methods for RD designs,
using observations in a specified or data-driven selected window around the cutoff where
local randomization is assumed to hold.

##### Usage

```
rdrandinf(
Y,
R,
cutoff = 0,
wl = NULL,
wr = NULL,
statistic = "diffmeans",
p = 0,
evall = NULL,
evalr = NULL,
kernel = "uniform",
fuzzy = NULL,
nulltau = 0,
d = NULL,
dscale = NULL,
ci,
interfci = NULL,
bernoulli = NULL,
reps = 1000,
seed = 666,
quietly = FALSE,
covariates,
obsmin = NULL,
wmin = NULL,
wobs = NULL,
wstep = NULL,
wmasspoints = FALSE,
nwindows = 10,
rdwstat = "diffmeans",
approx = FALSE,
rdwreps = 1000,
level = 0.15,
plot = FALSE,
obsstep = NULL
)
```

##### Arguments

- Y
a vector containing the values of the outcome variable.

- R
a vector containing the values of the running variable.

- cutoff
the RD cutoff (default is 0).

- wl
the left limit of the window. The default takes the minimum of the running variable.

- wr
the right limit of the window. The default takes the maximum of the running variable.

- statistic
the statistic to be used in the balance tests. Allowed options are

`diffmeans`

(difference in means statistic),`ksmirnov`

(Kolmogorov-Smirnov statistic) and`ranksum`

(Wilcoxon-Mann-Whitney standardized statistic). Default option is`diffmeans`

. The statistic`ttest`

is equivalent to`diffmeans`

and included for backward compatibility.- p
the order of the polynomial for outcome transformation model (default is 0).

- evall
the point at the left of the cutoff at which to evaluate the transformed outcome is evaluated. Default is the cutoff value.

- evalr
specifies the point at the right of the cutoff at which the transformed outcome is evaluated. Default is the cutoff value.

- kernel
specifies the type of kernel to use as weighting scheme. Allowed kernel types are

`uniform`

(uniform kernel),`triangular`

(triangular kernel) and`epan`

(Epanechnikov kernel). Default is`uniform`

.- fuzzy
indicates that the RD design is fuzzy.

`fuzzy`

can be specified as a vector containing the values of the endogenous treatment variable, or as a list where the first element is the vector of endogenous treatment values and the second element is a string containing the name of the statistic to be used. Allowed statistics are`ar`

(Anderson-Rubin statistic) and`tsls`

(2SLS statistic). Default statistic is`ar`

. The`tsls`

statistic relies on large-sample approximation.- nulltau
the value of the treatment effect under the null hypothesis (default is 0).

- d
the effect size for asymptotic power calculation. Default is 0.5 * standard deviation of outcome variable for the control group.

- dscale
the fraction of the standard deviation of the outcome variable for the control group used as alternative hypothesis for asymptotic power calculation. Default is 0.5.

- ci
calculates a confidence interval for the treatment effect by test inversion.

`ci`

can be specified as a scalar or a vector, where the first element indicates the value of alpha for the confidence interval (typically 0.05 or 0.01) and the remaining elements, if specified, indicate the grid of treatment effects to be evaluated. This option uses`rdsensitivity`

to calculate the confidence interval. See corresponding help for details. Note: the default tlist can be narrow in some cases, which may truncate the confidence interval. We recommend the user to manually set a large enough tlist.- interfci
the level for Rosenbaum's confidence interval under arbitrary interference between units.

- bernoulli
the probabilities of treatment for each unit when assignment mechanism is a Bernoulli trial. This option should be specified as a vector of length equal to the length of the outcome and running variables.

- reps
the number of replications (default is 1000).

- seed
the seed to be used for the randomization test.

- quietly
suppresses the output table.

- covariates
the covariates used by

`rdwinselect`

to choose the window when`wl`

and`wr`

are not specified. This should be a matrix of size n x k where n is the total sample size and k is the number of covariates.- obsmin
the minimum number of observations above and below the cutoff in the smallest window employed by the companion command

`rdwinselect`

. Default is 10.- wmin
the smallest window to be used (if

`minobs`

is not specified) by the companion command`rdwinselect`

. Specifying both`wmin`

and`obsmin`

returns an error.- wobs
the number of observations to be added at each side of the cutoff at each step.

- wstep
the increment in window length (if

`obsstep`

is not specified) by the companion command`rdwinselect`

. Specifying both`obsstep`

and`wstep`

returns an error.- wmasspoints
specifies that the running variable is discrete and each masspoint should be used as a window.

- nwindows
the number of windows to be used by the companion command

`rdwinselect`

. Default is 10.- rdwstat
the statistic to be used by the companion command

`rdwinselect`

(see corresponding help for options). Default option is`ttest`

.- approx
forces the companion command

`rdwinselect`

to conduct the covariate balance tests using a large-sample approximation instead of finite-sample exact randomization inference methods.- rdwreps
the number of replications to be used by the companion command

`rdwinselect`

. Default is 1000.- level
the minimum accepted value of the p-value from the covariate balance tests to be used by the companion command

`rdwinselect`

. Default is .15.- plot
draws a scatter plot of the minimum p-value from the covariate balance test against window length implemented by the companion command

`rdwinselect`

.- obsstep
the minimum number of observations to be added on each side of the cutoff for the sequence of fixed-increment nested windows. Default is 2. This option is deprecated and only included for backward compatibility.

##### Value

summary statistics

observed statistic(s)

randomization p-value(s)

asymptotic p-value(s)

chosen window

confidence interval (only if `ci`

option is specified)

confidence interval under interferecen (only if `interfci`

is specified)

##### References

M.D. Cattaneo, B. Frandsen and R. Titiunik. (2015). Randomization Inference in the Regression Discontinuity Design: An Application to Party Advantages in the U.S. Senate. *Journal of Causal Inference* 3(1): 1-24.

M.D. Cattaneo, R. Titiunik and G. Vazquez-Bare. (2016). Inference in Regression Discontinuity Designs under Local Randomization. *Stata Journal* 16(2): 331-367.

M.D. Cattaneo, R. Titiunik and G. Vazquez-Bare. (2017). Comparing Inference Approaches for RD Designs: A Reexamination of the Effect of Head Start on Child Mortality. *Journal of Policy Analysis and Management* 36(3): 643-681.

##### Examples

```
# NOT RUN {
# Toy dataset
X <- array(rnorm(200),dim=c(100,2))
R <- X[1,] + X[2,] + rnorm(100)
Y <- 1 + R -.5*R^2 + .3*R^3 + (R>=0) + rnorm(100)
# Randomization inference in window (-.75,.75)
tmp <- rdrandinf(Y,R,wl=-.75,wr=.75)
# Randomization inference in window (-.75,.75), all statistics
tmp <- rdrandinf(Y,R,wl=-.75,wr=.75,statistic='all')
# Randomization inference with window selection
# Note: low number of replications to speed up process.
# The user should increase the number of replications.
tmp <- rdrandinf(Y,R,statistic='all',covariates=X,wmin=.5,wstep=.125,rdwreps=500)
# }
```

*Documentation reproduced from package rdlocrand, version 0.7, License: GPL-2*