drtmle {drtmle} | R Documentation |
TMLE estimate of the average treatment effect with doubly-robust inference
Description
TMLE estimate of the average treatment effect with doubly-robust inference
Usage
drtmle(Y, A, W, DeltaA = as.numeric(!is.na(A)),
DeltaY = as.numeric(!is.na(Y)), a_0 = unique(A[!is.na(A)]), family = if
(all(Y %in% c(0, 1))) { stats::binomial() } else {
stats::gaussian() }, stratify = FALSE, SL_Q = NULL, SL_g = NULL,
SL_Qr = NULL, SL_gr = NULL, n_SL = 1, avg_over = "drtmle",
se_cv = "none", se_cvFolds = ifelse(se_cv == "partial", 10, 1),
targeted_se = se_cv != "partial", glm_Q = NULL, glm_g = NULL,
glm_Qr = NULL, glm_gr = NULL, adapt_g = FALSE, guard = c("Q", "g"),
reduction = "univariate", returnModels = FALSE, returnNuisance = TRUE,
cvFolds = 1, maxIter = 3, tolIC = 1/length(Y), tolg = 0.01,
verbose = FALSE, Qsteps = 2, Qn = NULL, gn = NULL,
use_future = FALSE, ...)
Arguments
Y |
A |
A |
A |
W |
A |
DeltaA |
A |
DeltaY |
A |
a_0 |
A |
family |
A |
stratify |
A |
SL_Q |
A vector of characters or a list describing the Super Learner
library to be used for the outcome regression. See
|
SL_g |
A vector of characters describing the super learner library to be
used for each of the propensity score regressions ( |
SL_Qr |
A vector of characters or a list describing the Super Learner library to be used for the reduced-dimension outcome regression. |
SL_gr |
A vector of characters or a list describing the Super Learner library to be used for the reduced-dimension propensity score. |
n_SL |
Number of repeated Super Learners to run (default 1) for the each nuisance parameter. Repeat Super Learners more times to obtain more stable inference. |
avg_over |
If multiple Super Learners are run, on which scale should the
results be aggregated. Options include: |
se_cv |
Should cross-validated nuisance parameter estimates be used
for computing standard errors?
Options are |
se_cvFolds |
If cross-validated nuisance parameter estimates are used
to compute standard errors, how many folds should be used in this computation.
If |
targeted_se |
A boolean indicating whether the targeted nuisance
parameters should be used in standard error computation or the initial
estimators. If |
glm_Q |
A character describing a formula to be used in the call to
|
glm_g |
A list of characters describing the formulas to be used
for each of the propensity score regressions ( |
glm_Qr |
A character describing a formula to be used in the call to
|
glm_gr |
A character describing a formula to be used in the call to
|
adapt_g |
A boolean indicating whether the propensity score should be
outcome adaptive. If |
guard |
A character vector indicating what pattern of misspecifications
to guard against. If |
reduction |
A character equal to |
returnModels |
A boolean indicating whether to return model fits for the outcome regression, propensity score, and reduced-dimension regressions. |
returnNuisance |
A boolean indicating whether to return the estimated
nuisance regressions evaluated on the observed data. Defaults to |
cvFolds |
A numeric equal to the number of folds to be used in
cross-validated fitting of nuisance parameters. If |
maxIter |
A numeric that sets the maximum number of iterations the TMLE can perform in its fluctuation step. |
tolIC |
A numeric that defines the stopping criteria based on the empirical mean of the influence function. |
tolg |
A numeric indicating the minimum value for estimates of the propensity score. |
verbose |
A boolean indicating whether to print status updates. |
Qsteps |
A numeric equal to 1 or 2 indicating whether the fluctuation
submodel for the outcome regression should be fit using a single
minimization ( |
Qn |
An optional list of outcome regression estimates. If specified, the
function will ignore the nuisance parameter estimation specified by
|
gn |
An optional list of propensity score estimates. If specified, the
function will ignore the nuisance parameter estimation specified by
|
use_future |
Boolean indicating whether to use |
... |
Other options (not currently used). |
Value
An object of class "drtmle"
.
drtmle
A
list
of doubly-robust point estimates and a doubly-robust covariance matrixnuisance_drtmle
A
list
of the final TMLE estimates of the outcome regression ($QnStar
), propensity score ($gnStar
), and reduced-dimension regressions ($QrnStar
,$grnStar
) evaluated at the observed data values.ic_drtmle
A
list
of the empirical mean of the efficient influence function ($eif
) and the extra pieces of the influence function resulting from misspecification. All should be smaller thantolIC
(unlessmaxIter
was reached first). Also includes a matrix of the influence function values at the estimated nuisance parameters evaluated at the observed data.aiptw_c
A
list
of doubly-robust point estimates and a non-doubly-robust covariance matrix. Theory does not guarantee performance of inference for these estimators, but simulation studies showed they often perform adequately.nuisance_aiptw
A
list
of the initial estimates of the outcome regression, propensity score, and reduced-dimension regressions evaluated at the observed data values.tmle
A
list
of doubly-robust point estimates and non-doubly-robust covariance for the standard TMLE estimator.aiptw
A
list
of doubly-robust point estimates and non-doubly-robust covariance matrix for the standard AIPTW estimator.gcomp
A
list
of non-doubly-robust point estimates and non-doubly-robust covariance matrix for the standard G-computation estimator. If super learner is used there is no guarantee of correct inference for this estimator.QnMod
The fitted object for the outcome regression. Returns
NULL
ifreturnModels = FALSE
.gnMod
The fitted object for the propensity score. Returns
NULL
ifreturnModels = FALSE
.QrnMod
The fitted object for the reduced-dimension regression that guards against misspecification of the outcome regression. Returns
NULL
ifreturnModels = FALSE
.grnMod
The fitted object for the reduced-dimension regression that guards against misspecification of the propensity score. Returns
NULL
ifreturnModels = FALSE
.a_0
The treatment levels that were requested for computation of covariate-adjusted means.
Examples
# load super learner
library(SuperLearner)
# simulate data
set.seed(123456)
n <- 100
W <- data.frame(W1 = runif(n), W2 = rnorm(n))
A <- rbinom(n, 1, plogis(W$W1 - W$W2))
Y <- rbinom(n, 1, plogis(W$W1 * W$W2 * A))
# A quick example of drtmle:
# We note that more flexible super learner libraries
# are available, and that we recommend the user use more flexible
# libraries for SL_Qr and SL_gr for general use.
fit1 <- drtmle(
W = W, A = A, Y = Y, a_0 = c(1, 0),
family = binomial(),
stratify = FALSE,
SL_Q = c("SL.glm", "SL.mean", "SL.glm.interaction"),
SL_g = c("SL.glm", "SL.mean", "SL.glm.interaction"),
SL_Qr = "SL.glm",
SL_gr = "SL.glm", maxIter = 1
)