The IsoXshift function first identifies two exposure levels which most efficiently result in a target outcome. These are the two exposure levels that are closest the the exposure means, that is, need minimal intervention to achieve a target outcome level. These we call the oracle point parameter which reflects the most efficient intervention strategy. Given in the real world, we cannot set people's exposures to a specific level in the whole population, we simulate an intervention strategy where individuals are shifted as close as possible to this oracle point parameter without violating positivity, the conditional probability of being exposed to these new exposure levels does not deviate from the likelihood under observed exposure levels. IsoXshift outputs the expected outcome under joint shift, individual shifts, and compares the expectation under joint shift to the sum of individual shifts. This type of interaction parameter is similar to isobolic interactions in toxicology.

IsoXshift(
  w,
  a,
  y,
  target_outcome_lvl,
  epsilon,
  estimator = "tmle",
  mu_learner = NULL,
  g_learner = NULL,
  pi_learner = NULL,
  n_folds = 2,
  outcome_type = "continuous",
  parallel = TRUE,
  parallel_type = "multi_session",
  num_cores = 2,
  seed = seed,
  hn_trunc_thresh = 10,
  top_n = 1
)

Arguments

w

A matrix, data.frame, or similar containing a set of baseline covariates. These variables are measured before exposures.

a

matrix, data.frame, or similar containing individual or multiple exposures.

y

numeric vector of observed outcomes.

estimator

The type of estimator to fit: "tmle" for targeted maximum likelihood estimation, or "onestep" for a one-step estimator.

mu_learner

Learners for fitting Super Learner ensembles to the outcome model via sl3.

g_learner

Learners for fitting Super Learner ensembles to the g-mechanism g(A|W) (a probability estimator, not a density estimator) for mediation via sl3.

pi_learner

Learners for fitting Super Learner ensembles to densities via sl3.

n_folds

Number of folds to use in cross-validation, default is 2.

outcome_type

Data type of the outcome, default is "continuous".

parallel

Whether to parallelize across cores (default: TRUE).

parallel_type

Type of parallelization to use if parallel is TRUE: "multi_session" (default), "multicore", or "sequential".

num_cores

Number of CPU cores to use in parallelization (default: 2).

seed

numeric seed value to be passed to all functions.

hn_trunc_thresh

Truncation level for the clever covariate (default: 10).

z

matrix, data.frame, or similar containing individual or multiple mediators (optional).

fluctuation

Method used in the targeting step for TML estimation: "standard" or "weighted". This determines where to place the auxiliary covariate in the logistic tilting regression.

zeta_learner

Learners for fitting Super Learner ensembles to the outcome model via sl3..

Value

An S3 object of class IsoXshift containing the results of the procedure to compute a TML or one-step estimate of the counterfactual mean under a modified treatment policy that shifts a continuous-valued exposure by a scalar amount delta that is determined. These exposures are data-adaptively identified using the CV-TMLE procedure.