# Adjust for exposure misclassification -------------------------------------
df_observed <- data_observed(
data = df_em,
bias = "em",
exposure = "Xstar",
outcome = "Y",
confounders = "C1"
)
# Using validation data
df_validation <- data_validation(
data = df_em_source,
true_exposure = "X",
true_outcome = "Y",
confounders = "C1",
misclassified_exposure = "Xstar"
)
multibias_adjust(
data_observed = df_observed,
data_validation = df_validation
)
# Using bias_params
bp <- bias_params(coef_list = list(x = c(-2.10, 1.62, 0.63, 0.35)))
multibias_adjust(
data_observed = df_observed,
bias_params = bp
)
# Adjust for three biases ---------------------------------------------------
df_observed <- data_observed(
data = df_uc_om_sel,
bias = c("uc", "om", "sel"),
exposure = "X",
outcome = "Ystar",
confounders = c("C1", "C2", "C3")
)
# Using validation data
df_validation <- data_validation(
data = df_uc_om_sel_source,
true_exposure = "X",
true_outcome = "Y",
confounders = c("C1", "C2", "C3", "U"),
misclassified_outcome = "Ystar",
selection = "S"
)
multibias_adjust(
data_observed = df_observed,
data_validation = df_validation
)
# Using bias_params
bp1 <- bias_params(
coef_list = list(
u = c(-0.32, 0.59, 0.69),
y = c(-2.85, 0.71, 1.63, 0.40, -0.85, 0.22),
s = c(0.00, 0.74, 0.19, 0.02, -0.06, 0.02)
)
)
multibias_adjust(
data_observed = df_observed,
bias_params = bp1
)
bp2 <- bias_params(
coef_list = list(
u1y0 = c(-0.20, 0.62, 0.01, -0.08, 0.10, -0.15),
u0y1 = c(-3.28, 0.63, 1.65, 0.42, -0.85, 0.26),
u1y1 = c(-2.70, 1.22, 1.64, 0.32, -0.77, 0.09),
s = c(0.00, 0.74, 0.19, 0.02, -0.06, 0.02)
)
)
# with bootstrapping
if (FALSE) {
multibias_adjust(
data_observed = df_observed,
bias_params = bp2,
bootstrap = TRUE,
bootstrap_reps = 1000
)
}
Run the code above in your browser using DataLab