Skip to contents

Simple sensitivity analysis for disease or exposure misclassification. Confidence interval for odds ratio adjusted using sensitivity and specificity is computed as in Chu et al. (2006), for exposure misclassification.

Usage

misclassification(
  case,
  exposed,
  type = c("exposure", "exposure_pv", "outcome"),
  bias_parms = NULL,
  alpha = 0.05
)

Arguments

case

Outcome variable. If a variable, this variable is tabulated against.

exposed

Exposure variable.

type

Choice of misclassification:

  1. exposure: bias analysis for exposure misclassification; corrections using sensitivity and specificity: nondifferential and independent errors,

  2. exposure_pv: bias analysis for exposure misclassification; corrections using PPV/NPV: nondifferential and independent errors,

  3. outcome: bias analysis for outcome misclassification.

bias_parms

Vector defining the bias parameters. This vector has 4 elements between 0 and 1, in the following order:

  1. Sensitivity of exposure (when type = "exposure") or outcome (when type = "outcome") classification among those with the outcome (when type = "exposure") or exposure (when type = "outcome"),

  2. Sensitivity of exposure (or outcome) classification among those without the outcome (or exposure),

  3. Specificity of exposure (or outcome) classification among those with the outcome (or exposure), and

  4. Specificity of exposure (or outcome) classification among those without the outcome (or exposure).

If PPV/NPV is chosen in case of exposure misclassification, this vector is the following:

  1. Positive predictive value among those with the outcome,

  2. Positive predictive value among those without the outcome,

  3. Negative predictive value among those with the outcome,

  4. Negative predictive value among those without the outcome.

alpha

Significance level.

Value

A list with elements:

obs.data

The analyzed 2 x 2 table from the observed data.

corr.data

The expected observed data given the true data assuming misclassification.

obs.measures

A table of observed relative risk and odds ratio with confidence intervals.

adj.measures

A table of adjusted relative risk and odds ratio with confidence interval for odds ratio.

bias.parms

Input bias parameters.

Details

For exposure misclassification, bias-adjusted measures are available using sensitivity and specificity, or using predictive values.

References

Lash, T.L., Fox, M.P, Fink, A.K., 2009 Applying Quantitative Bias Analysis to Epidemiologic Data, pp.79--108, Springer.

Chu, H., Zhaojie, W., Cole, S.R., Greenland, S., Sensitivity analysis of misclassification: A graphical and a Bayesian approach, Annals of Epidemiology 2006;16:834-841.

Examples

# The data for this example come from:
# Fink, A.K., Lash,  T.L. A null association between smoking during pregnancy
# and breast cancer using Massachusetts registry data (United States).
# Cancer Causes Control 2003;14:497-503.
misclassification(matrix(c(215, 1449, 668, 4296),
dimnames = list(c("Breast cancer+", "Breast cancer-"),
c("Smoker+", "Smoker-")),
nrow = 2, byrow = TRUE),
type = "exposure",
bias_parms = c(.78, .78, .99, .99))
#> --Observed data-- 
#>          Outcome: Breast cancer+ 
#>        Comparing: Smoker+ vs. Smoker- 
#> 
#>                Smoker+ Smoker-
#> Breast cancer+     215    1449
#> Breast cancer-     668    4296
#> 
#>                                        2.5%     97.5%
#> Observed Relative Risk: 0.9653825 0.8523766 1.0933704
#>    Observed Odds Ratio: 0.9542406 0.8092461 1.1252141
#> ---
#>                                                                2.5%     97.5%
#> Misclassification Bias Corrected Relative Risk: 0.9614392                    
#>    Misclassification Bias Corrected Odds Ratio: 0.9490695 0.7895687 1.1407909

misclassification(matrix(c(4558, 3428, 46305, 46085),
dimnames = list(c("AMI death+", "AMI death-"),
c("Male+", "Male-")),
nrow = 2, byrow = TRUE),
type = "outcome",
bias_parms = c(.53, .53, .99, .99))
#> --Observed data-- 
#>          Outcome: AMI death+ 
#>        Comparing: Male+ vs. Male- 
#> 
#>            Male+ Male-
#> AMI death+  4558  3428
#> AMI death- 46305 46085
#> 
#>                                      2.5%    97.5%
#> Observed Relative Risk: 1.294347 1.240431 1.350607
#>    Observed Odds Ratio: 1.323321 1.263639 1.385822
#> ---
#>                                                         
#> Misclassification Bias Corrected Relative Risk: 1.344039
#>    Misclassification Bias Corrected Odds Ratio: 1.406235

# The following example comes from Chu et al. Sensitivity analysis of
# misclassification: A graphical and a Bayesian approach.
# Annals of Epidemiology 2006;16:834-841.
misclassification(matrix(c(126, 92, 71, 224),
dimnames = list(c("Case", "Control"), c("Smoker +", "Smoker -")),
nrow = 2, byrow = TRUE),
type = "exposure",
bias_parms = c(.94, .94, .97, .97))
#> --Observed data-- 
#>          Outcome: Case 
#>        Comparing: Smoker + vs. Smoker - 
#> 
#>         Smoker + Smoker -
#> Case         126       92
#> Control       71      224
#> 
#>                                      2.5%    97.5%
#> Observed Relative Risk: 2.196866 1.796016 2.687181
#>    Observed Odds Ratio: 4.320882 2.958402 6.310846
#> ---
#>                                                              2.5%    97.5%
#> Misclassification Bias Corrected Relative Risk: 2.377254                  
#>    Misclassification Bias Corrected Odds Ratio: 5.024508 3.282534 7.690912

# The next example, using PPV/NPV, comes from Bodnar et al. Validity of birth
# certificate-derived maternal weight data.
# Paediatric and Perinatal Epidemiology 2014;28:203-212.
misclassification(matrix(c(599, 4978, 31175, 391851),
dimnames = list(c("Preterm", "Term"), c("Underweight", "Normal weight")),
nrow = 2, byrow = TRUE),
type = "exposure_pv",
bias_parms = c(0.65, 0.74, 1, 0.98))
#> --Observed data-- 
#>          Outcome: Preterm 
#>        Comparing: Underweight vs. Normal weight 
#> 
#>         Underweight Normal weight
#> Preterm         599          4978
#> Term          31175        391851
#> 
#>                                      2.5%    97.5%
#> Observed Relative Risk: 1.502808 1.381743 1.634480
#>    Observed Odds Ratio: 1.512469 1.388465 1.647547
#> ---
#>                                                           2.5% 97.5%
#> Misclassification Bias Corrected Relative Risk: 0.9528156           
#>    Misclassification Bias Corrected Odds Ratio: 0.9522211