iptw_est {causaldrf} | R Documentation |
The inverse probability of treatment weighting (iptw) estimator
Description
The iptw method or importance weighting method estimates the ADRF by weighting the data with stabilized or non-stabilized weights.
Usage
iptw_est(Y,
treat,
treat_formula,
numerator_formula,
data,
degree,
treat_mod,
link_function,
...)
Arguments
Y |
is the the name of the outcome variable contained in |
treat |
is the name of the treatment variable contained in
|
treat_formula |
an object of class "formula" (or one that can be
coerced to that class) that regresses |
numerator_formula |
an object of class "formula" (or one that can be
coerced to that class) that regresses |
data |
is a dataframe containing |
degree |
is 1 for linear and 2 for quadratic outcome model. |
treat_mod |
a description of the error distribution to be used in the
model for treatment. Options include: |
link_function |
specifies the link function between the variables in
numerator or denominator and exposure, respectively.
For |
... |
additional arguments to be passed to the low level treatment regression fitting functions. |
Details
This method uses inverse probability of treatment weighting to adjust for possible biases. For more details see Schafer and Galagate (2015) and Robins, Hernan, and Brumback (2000).
Value
iptw_est
returns an object of class "causaldrf",
a list that contains the following components:
param |
parameter estimates for a iptw fit. |
t_mod |
the result of the treatment model fit. |
num_mod |
the result of the numerator model fit. |
weights |
the estimated weights. |
weight_data |
the weights. |
out_mod |
the outcome model. |
call |
the matched call. |
References
Schafer, J.L., Galagate, D.L. (2015). Causal inference with a continuous treatment and outcome: alternative estimators for parametric dose-response models. Manuscript in preparation.
van der Wal, Willem M., and Ronald B. Geskus. "IPW: an R package for inverse probability weighting." Journal of Statistical Software 43.13 (2011): 1-23.
Robins, James M and Hernan, Miguel Angel and Brumback, Babette. Marginal structural models and causal inference in epidemiology. Epidemiology 11.5 (2000): 550–560.
Zhu, Yeying and Coffman, Donna L and Ghosh, Debashis. A Boosting Algorithm for Estimating Generalized Propensity Scores with Continuous Treatments. Journal of Causal Inference 3.1 (2015): 25–40.
See Also
iptw_est
, ismw_est
,
reg_est
, aipwee_est
, wtrg_est
,
etc. for other estimates.
t_mod
, overlap_fun
to prepare the data
for use in the different estimates.
Examples
## Example from Schafer (2015).
example_data <- sim_data
iptw_list <- iptw_est(Y = Y,
treat = T,
treat_formula = T ~ B.1 + B.2 + B.3 + B.4 + B.5 + B.6 + B.7 + B.8,
numerator_formula = T ~ 1,
data = example_data,
degree = 1,
treat_mod = "Normal")
sample_index <- sample(1:1000, 100)
plot(example_data$T[sample_index],
example_data$Y[sample_index],
xlab = "T",
ylab = "Y",
main = "iptw estimate")
abline(iptw_list$param[1],
iptw_list$param[2],
lty=2,
lwd = 2,
col = "blue")
legend('bottomright',
"iptw estimate",
lty=2,
lwd = 2,
col = "blue",
bty='Y',
cex=1)
rm(example_data, iptw_list, sample_index)
## Example from van der Wal, Willem M., and Ronald B. Geskus. (2011)
#Simulate data with continuous confounder and outcome, binomial exposure.
#Marginal causal effect of exposure on outcome: 10.
n <- 1000
simdat <- data.frame(l = rnorm(n, 10, 5))
a.lin <- simdat$l - 10
pa <- exp(a.lin)/(1 + exp(a.lin))
simdat$a <- rbinom(n, 1, prob = pa)
simdat$y <- 10*simdat$a + 0.5*simdat$l + rnorm(n, -10, 5)
simdat[1:5,]
temp_iptw <- iptw_est(Y = y,
treat = a,
treat_formula = a ~ l,
numerator_formula = a ~ 1,
data = simdat,
degree = 1,
treat_mod = "Binomial",
link_function = "logit")
temp_iptw[[1]] # estimated coefficients