MR.reg {MultiRobust} | R Documentation |
Multiply Robust Estimation for (Mean) Regression
Description
MR.reg()
is used for (mean) regression under generalized linear models with missing responses and/or missing covariates. Multiple missingness probability models and imputation models are allowed.
Usage
MR.reg(formula, family = gaussian, imp.model = NULL,
mis.model = NULL, moment = NULL, order = 1, L = 30, data,
bootstrap = FALSE, bootstrap.size = 300, alpha = 0.05, ...)
Arguments
formula |
The |
family |
A description of the error distribution and link function to be used for the GLM of interest. |
imp.model |
A list of possibly multiple lists of the form |
mis.model |
A list of missingness probability models defined by |
moment |
A vector of auxiliary variables whose moments are to be calibrated. |
order |
A numeric value. The order of moments up to which to be calibrated. |
L |
Number of imputations. |
data |
A data frame with missing data encoded as |
bootstrap |
Logical. If |
bootstrap.size |
A numeric value. Number of bootstrap resamples generated if |
alpha |
Significance level used to construct the 100(1 - |
... |
Addition arguments for the function |
Details
The function MR.reg()
currently deals with data with one missingness pattern. When multiple variables are subject to missingness, their values are missing simultaneously. The methods in Han (2016) and Zhang and Han (2019) specify an imputation model by modeling the joint distribution of the missing variables conditional on the fully observed variables. In contrast, the function MR.reg()
specifies an imputation model by separately modeling the marginal distribution of each missing variable conditional on the fully observed variables. These marginal distribution models for different missing variables constitute one joint imputation model. Different imputation models do not need to model the marginal distribution of each missing variable differently.
Value
coefficients |
The estimated regression coefficients. |
SE |
The bootstrap standard error of |
CI |
A Wald-type confidence interval based on |
References
Han, P. (2014). Multiply robust estimation in regression analysis with missing data. Journal of the American Statistical Association, 109(507), 1159–1173.
Han, P. (2016). Combining inverse probability weighting and multiple imputation to improve robustness of estimation. Scandinavian Journal of Statistics, 43, 246–260.
Zhang, S. and Han, P. (2019). A simple implementation of multiply robust estimation for GLMs with missing data. Unpublished manuscript.
See Also
glm
.
Examples
# Simulated data set
set.seed(123)
n <- 400
gamma0 <- c(1, 2, 3)
alpha0 <- c(-0.8, -0.5, 0.3)
S <- runif(n, min = -2.5, max = 2.5) # auxiliary variables
X1 <- rbinom(n, size = 1, prob = 0.5) # covariate X1
X2 <- rexp(n) # covariate X2
p.obs <- 1 / (1 + exp(alpha0[1] + alpha0[2] * S + alpha0[3] * S ^ 2)) # non-missingness probability
R <- rbinom(n, size = 1, prob = p.obs)
a.x <- gamma0[1] + gamma0[2] * X1 + gamma0[3] * X2
Y <- rnorm(n, a.x)
dat <- data.frame(S, X1, X2, Y)
dat[R == 0, c(2, 4)] <- NA # X1 and Y may be missing
# marginal imputation models for X1
impX1.1 <- glm.work(formula = X1 ~ S, family = binomial(link = logit))
impX1.2 <- glm.work(formula = X1 ~ S + X2, family = binomial(link = cloglog))
# marginal imputation models for Y
impY.1 <- glm.work(formula = Y ~ S, family = gaussian)
impY.2 <- glm.work(formula = Y ~ S + X2, family = gaussian)
# missingness probability models
mis1 <- glm.work(formula = R ~ S + I(S ^ 2), family = binomial(link = logit))
mis2 <- glm.work(formula = R ~ I(S ^ 2), family = binomial(link = cloglog))
# this example considers the following K = 3 imputation models for imputing the missing (X1, Y)
imp1 <- list(impX1.1, impY.1)
imp2 <- list(impX1.1, impY.2)
imp3 <- list(impX1.2, impY.1)
results <- MR.reg(formula = Y ~ X1 + X2, family = gaussian, imp.model = list(imp1, imp2, imp3),
mis.model = list(mis1, mis2), L = 10, data = dat)
results$coefficients
MR.reg(formula = Y ~ X1 + X2, family = gaussian,
moment = c(S, X2), order = 2, data = dat)$coefficients