View source: R/MRMCbinary.R View source: R/MRMCbinary.R
| MRMCbinary | R Documentation |
MRMCbinary() is the main function of the MRMCbinary package and
can be used to compare modality effects (as well as reader effects and modality effects together), as measured by sensitivity and specificity,
in multi-reader multi-case (MRMC) studies with binary diagnostic test results.
MRMCbinary(
data,
Modality,
Reader,
Case,
D,
Y,
measure,
effect,
interaction = NULL,
reference.Modality = NULL,
reference.Reader = NULL
)
data |
A data frame in which contains the modality identifiers ( |
Modality |
Variable specifying the modality identifiers. |
Reader |
Variable specifying the reader identifiers. |
Case |
Variable specifying the case identifiers. |
D |
Variable specifying the true disease status, coded as 1 for diseased cases and 0 for non-diseased cases. |
Y |
Variable specifying the binary diagnostic test result, coded as 1 for test-positive results and 0 for test-negative results. |
measure |
Diagnostic accuracy measure to be analyzed (one of |
effect |
Effect of interest to be evaluated (one of |
interaction |
Logical indicating whether to include the reader-by-modality interaction effect. Specify this argument only when |
reference.Modality |
Reference level for the modality identifier variable. |
reference.Reader |
Reference level for the reader identifier variable. |
There are three effects that can be evaluated:
effect = "Modality":
Used when the goal is to evaluate modality effects only.
In this case, Cochran's Q test is reported, or McNemar's test when comparing two modalities only.
When effect = "Modality", interaction must be NULL.
effect = "Reader":
Used when the goal is to evaluate reader effects only.
In this case, Cochran's Q test is reported, or McNemar's test when comparing two readers only.
When effect = "Reader", interaction must be NULL.
effect = "Both":
Used when the goal is to evaluate modality effects and reader effects together.
In this case, interaction must be specified as TRUE or FALSE.
Set interaction = FALSE to fit the additive model without reader-by-modality interaction,
and set interaction = TRUE to fit the model including the reader-by-modality interaction effect.
When interaction = TRUE, Cochran's Q test is reported.
When interaction = FALSE, Cochran's Q test or McNemar's test is not reported,
because the corresponding Cochran's Q test is linked to the model with interaction rather than the additive model.
See Lee et al. (2026) for details.
An object of class MRMCbinary containing the following components:
CLR_sen |
Conditional logistic regression results for sensitivity. |
CLR_LRT_sen |
Likelihood ratio test results from the conditional logistic regression for sensitivity. |
CLR_Score_sen |
Score test results from the conditional logistic regression for sensitivity. |
CLR_Wald_sen |
Wald test results from the conditional logistic regression for sensitivity. |
Q_MN_sen |
Additional nonparametric test results for sensitivity, when available.
For |
CLR_spe |
Conditional logistic regression results for specificity. |
CLR_LRT_spe |
Likelihood ratio test results from the conditional logistic regression for specificity. |
CLR_Score_spe |
Score test results from the conditional logistic regression for specificity. |
CLR_Wald_spe |
Wald test results from the conditional logistic regression for specificity. |
Q_MN_spe |
Additional nonparametric test results for specificity, when available.
For |
formula |
Formula used in the conditional logistic regression. |
args |
List of arguments used in the |
n.modality |
Total number of modalities. |
n.reader |
Total number of readers. |
n.case |
Total number of cases. |
effect |
Effect evaluated in the analysis. |
measure |
Diagnostic accuracy measure analyzed. |
interaction |
Interaction setting used in the analysis. This is |
reference.Modality |
Reference level for the modality identifier variable. |
reference.Reader |
Reference level for the reader identifier variable. |
n.diseased |
Number of diseased cases. If |
n.nondiseased |
Number of non-diseased cases. If |
n.pos.diseased |
Number of test-positive cases among diseased cases. If |
n.pos.nondiseased |
Number of test-positive cases among non-diseased cases. If |
The results for MRMCbinary objects can be printed with
print.MRMCbinary and summarized with
summary.MRMCbinary.
Note: When comparing specificities, the reported estimates are based on the false positive fraction (FPF),
because the model for non-diseased cases targets \mbox{logit}(\mbox{FPF}).
Hence, a positive coefficient implies lower specificity than the reference.
For the Estimate and confidence interval reported by print.MRMCbinary,
interpretation on the specificity scale requires reversing the sign of the reported log odds ratio and confidence interval limits.
Equivalently, for the odds ratio and confidence interval reported by summary.MRMCbinary,
if the reported values are OR and (L, U), then the corresponding specificity odds ratio and confidence interval are 1/OR and (1/U, 1/L), respectively.
Lee, S., Jang, S., and Lee, W. (2026). Evaluating Diagnostic Accuracy of Binary Medical Tests in Multi-Reader Multi-Case Study. Statistics in Medicine, 45(6–7), e70471. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/sim.70471")}
print.MRMCbinary, summary.MRMCbinary
## Load example data
data(VanDyke)
## Return the first parts of an object
head(VanDyke)
## See unique readers
unique(VanDyke$reader)
## See unique modalities
unique(VanDyke$treatment)
## Create binary test results (Y_ijk)
VanDyke$Y <- as.numeric(VanDyke$rating >= 3)
## Example usage of MRMCbinary function:
# When comparing the sensitivities and specificities between modalities
modality_result <- MRMCbinary(data = VanDyke, Modality = treatment, Reader = reader,
Case = case, D = truth, Y = Y, measure = "All",
effect = "Modality", interaction = NULL,
reference.Modality = "1", reference.Reader = NULL)
# When comparing the sensitivities and specificities between readers
reader_result <- MRMCbinary(data = VanDyke, Modality = treatment, Reader = reader,
Case = case, D = truth, Y = Y, measure = "All",
effect = "Reader", interaction = NULL,
reference.Modality = NULL, reference.Reader = "1")
# When comparing the sensitivities and specificities
# between modalities and between readers together
# not considering interaction between modalities and readers
both_result_wo_int <- MRMCbinary(data = VanDyke, Modality = treatment, Reader = reader,
Case = case, D = truth, Y = Y, measure = "All",
effect = "Both", interaction = FALSE,
reference.Modality = "1", reference.Reader = "1")
# When comparing the sensitivities and specificities
# between modalities and between readers together
# considering interaction between modalities and readers
both_result_with_int <- MRMCbinary(data = VanDyke, Modality = treatment, Reader = reader,
Case = case, D = truth, Y = Y, measure = "All",
effect = "Both", interaction = TRUE,
reference.Modality = "1", reference.Reader = "1")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.