The multibias package is used to adjust for multiple biases in causal inference when working with observational data. Bias here refers to the case when the associational estimate of effect does not equal the causal estimate of effect:
\[(P(Y=1|X=1,C=0) / P(Y=1|X=0,C=0)) \neq (P(Y^{X=1}=1) / P(Y^{X=0}=1))\]
The multibias_adjust()
function outputs odds ratio
estimates adjusted for any combination of: uncontrolled confounding
(uc), exposure misclassification (em),
outcome misclassification (om), and selection bias
(sel).
The package also includes several dataframes that are useful for
validating the bias adjustment methods. Each dataframe contains
different combinations of bias as identified by the same prefixing
system. For each bias combination, there is a dataframe with incomplete
information (as would be encountered in the real world) (e.g.,
df_uc
) and a dataframe with complete information that was
used to derive the biased data (e.g., df_uc_source
).
# install from CRAN
install.packages("multibias")
# install from github using devtools
# library("devtools")
::install_github("pcbrendel/multibias") devtools
data_observed
object. Here you provide the data, specify the key variables, and list
the biases present in the data. See list below for the different bias
combinations that multibias can handle.bias_params
object. Values
for these parameters could come from the literature, validation data, or
expert opinion. Each parameter can be represented as a single value or
as a probability distribution. See the bias_params
documentation for the full bias models.data_validation
object.
The purpose of validation data is to use an external data source to
transport the necessary causal relationships that are missing in the
observed data.multibias_adjust()
using the above inputs to obtain
the bias-adjusted exposure-outcome odds ratio and confidence
interval.Single Bias
Multiple Biases