| GATES {GenericML} | R Documentation |
Performs GATES regression
Description
Performs the linear regression for the Group Average Treatments Effects (GATES) procedure.
Usage
GATES(
Y,
D,
propensity_scores,
proxy_BCA,
proxy_CATE,
membership,
HT = FALSE,
X1_control = setup_X1(),
vcov_control = setup_vcov(),
diff = setup_diff(),
significance_level = 0.05
)
Arguments
Y |
A numeric vector containing the response variable. |
D |
A binary vector of treatment assignment. Value one denotes assignment to the treatment group and value zero assignment to the control group. |
propensity_scores |
A numeric vector of propensity scores. We recommend to use the estimates of a |
proxy_BCA |
A numeric vector of proxy baseline conditional average (BCA) estimates. We recommend to use the estimates of a |
proxy_CATE |
A numeric vector of proxy conditional average treatment effect (CATE) estimates. We recommend to use the estimates of a |
membership |
A logical matrix that indicates the group membership of each observation in |
HT |
Logical. If |
X1_control |
Specifies the design matrix |
vcov_control |
Specifies the covariance matrix estimator. Must be an object of class |
diff |
Specifies the generic targets of CLAN. Must be an object of class |
significance_level |
Significance level. Default is 0.05. |
Value
An object of class "GATES", consisting of the following components:
generic_targetsA matrix of the inferential results on the GATES generic targets.
coefficientsAn object of class
"coeftest", contains the coefficients of the GATES regression.lmAn object of class
"lm"used to fit the linear regression model.
References
Chernozhukov V., Demirer M., Duflo E., Fernández-Val I. (2020). “Generic Machine Learning Inference on Heterogenous Treatment Effects in Randomized Experiments.” arXiv preprint arXiv:1712.04802. URL: https://arxiv.org/abs/1712.04802.
See Also
setup_X1(),
setup_diff(),
setup_vcov(),
propensity_score(),
proxy_BCA(),
proxy_CATE()
Examples
## generate data
set.seed(1)
n <- 150 # number of observations
p <- 5 # number of covariates
D <- rbinom(n, 1, 0.5) # random treatment assignment
Y <- runif(n) # outcome variable
propensity_scores <- rep(0.5, n) # propensity scores
proxy_BCA <- runif(n) # proxy BCA estimates
proxy_CATE <- runif(n) # proxy CATE estimates
membership <- quantile_group(proxy_CATE) # group membership
## perform GATES
GATES(Y, D, propensity_scores, proxy_BCA, proxy_CATE, membership)