transport_ate {transportr} | R Documentation |
Transported Average Treatment Effect
Description
Implements two one-step estimators for the transported average treatment effect for a binary or continuous outcome. Nuisance parameters are estimated using the Super Learner algorithm.
Usage
transport_ate(
data,
trt,
outcome,
covar,
pop,
obs = NULL,
id = NULL,
weights = NULL,
estimator = c("standard", "collaborative"),
learners_trt = "glm",
learners_pop = "glm",
learners_outcome = "glm",
learners_heterogeneity = "glm",
folds = 1,
control = transport_control()
)
Arguments
data |
[ |
trt |
[ |
outcome |
[ |
covar |
[ |
pop |
[ |
obs |
[ |
id |
[ |
weights |
[ |
estimator |
[ |
learners_trt |
[ |
learners_pop |
[ |
learners_outcome |
[ |
learners_heterogeneity |
[ |
folds |
[ |
control |
[ |
Details
Estimators
The "collaborative" estimator uses covariate dimension reduction and does not require users to have knowledge about which covariates are effect modifiers and which differ in distribution between the populations. The "standard" estimator assumes all covariates are effect modifiers and differ in distribution between the populations.
Value
An object of class transported_ate
containing the parameter estimate.
Examples
gendata <- function(n, A = NULL) {
W <- rbinom(n, 1, 0.5)
V <- rbinom(n, 1, 0.66)
Z <- rbinom(n, 1, 0.33)
if (is.null(A)) A <- rbinom(n, 1, 0.5)
S <- rbinom(n, 1, 0.4 + 0.5*W - 0.3*Z)
Yi <- rnorm(n, A + W + A*V + 2.5*A*Z, sqrt((0.1 + 0.8*W)^2))
Y <- ifelse(S == 1, Yi, NA_real_)
data.frame(W = W,
V = V,
Z = Z,
S = S,
A = A,
Y = Y,
Yi = Yi)
}
set.seed(123)
n <- 250
tmp <- gendata(n)
transport_ate(data = tmp,
trt = "A",
outcome = "Y",
covar = c("W", "V", "Z"),
pop = "S",
estimator = "standard",
folds = 1)
transport_ate(data = tmp,
trt = "A",
outcome = "Y",
covar = c("W", "V", "Z"),
pop = "S",
estimator = "collaborative",
folds = 1)