RMH_to_OR | R Documentation |
Determines Obuchowski-Rockette (OR) model parameter values that describe the distribution of empirical AUC reader performance outcomes computed from multireader multicase likelihood-of-disease rating data simulated from the Roe & Metz (RM) simulation model, based on the analytical mapping provided by Hillis (2018). The function assumes the RM model proposed by (Hillis, 2012), which generalizes the orginal RM model (Roe and Metz, 1997) by allowing the latent confidence-of-disease rating distributions to have unequal diseased-case and nondiseased-case variances, with the variance components involving diseased cases constrained to differ by a factor of 1/b^2, b>0, from corresponding variance components involving nondiseased cases. Throughout we refer to the Hillis (2012) RM model as the RMH model.
RMH_to_OR(...) ## Default S3 method: RMH_to_OR( ..., n0, n1, b, delta1, delta2, var_R, var_TR, var_C, var_TC, var_RC, var_error ) ## S3 method for class 'data.frame' RMH_to_OR(params, ...)
... |
arguments passed to the default method. |
n0, n1 |
numbers of nondiseased and diseased cases. |
b |
b>0, with 1/b^2 = ratio of each diseased-case variance component to the corresponding diseased-case variance component. It follows that b is also the conventional binormal-curve slope, i.e., the slope of each reader's true ROC curve plotted in probit space. |
delta1, delta2 |
test 1 and test 2 separations of the RMH-model nondiseased and diseased latent likelihood-of-disease rating distribution means. |
var_R, var_TR |
RMH-model reader and test-by-reader variance components. |
var_C, var_TC, var_RC, var_error |
RMH-model case, test-by-case, reader-by-case and error variance components for nondiseased cases. |
params |
data frame of above RM parameter values in the columns. |
Hillis (2012) modified the original RM model (Roe and Metz, 1997) by allowing variance components involving case to depend on truth (diseased/nondiseased), with variance components involving diseased cases set equal to those involving nondiseased cases multiplied by the factor 1/b^2, b>0. Assuming this model, which we refer to as the RMH model, Hillis (2018) derived analytical formulas expressing OR parameters that describe the distribution of empirical AUC outcomes computed from RMH model simulated data as functions of the RMH parameters. This mapping from the RMH parameters to the OR parameters is implemented in R by the RMH_to_OR function.
A related function is the OR_to_RMH function, which determines RM parameter values corresponding to real-data or conjectured Obuchowski-Rockette (OR) parameter estimates.
The OR model parameters are returned in a data frame with the following elements.
arguments passed to the default method.
test 1 and 2 expected empirical AUCs.
OR reader and test-by-reader variance components.
OR error correlations.
OR error variance.
number of nondiseased and diseased cases.
Related quantities describing the true reader ROC curves that are also returned in the data frame:
b > 0, with 1/b^2 = (RM diseased variance component) / (corresponding RM nondiseased variance component).
expected mean-to-sigma ratio across readers for test 1.
expected mean-to-sigma ratio across readers for test 2.
probability that the test 1 ROC curve for a random reader will be noticeably improper (i.e, |mean-to-sigma ratio| < 2).
probability that the test 2 ROC curve for a random reader will be noticeably improper (i.e, |mean-to-sigma ratio| < 2).
Stephen L. Hillis, Departments of Radiology and Biostatistics, University of Iowa, steve-hillis@uiowa.edu
Brian J. Smith, Department of Biostatistics, University of Iowa, brian-j-smith@uiowa.edu
Hillis SL (2012). Simulation of unequal-variance binormal multireader ROC decision data: an extension of the Roe and Metz simulation model. Academic Radiology, 19(12): 1518-1528. doi: 10.1016/j.acra.2012.09.011
Hillis SL (2018). Relationship between Roe and Metz simulation model for multireader diagnostic data and Obuchowski-Rockette model parameters. Statistics in Medicine, 37(13): 2067-2093. doi: 10.1002/sim.7616
Roe CA and Metz CE (1997). Dorfman-Berbaum-Metz method for statistical analysis of multireader, multimodality receiver operating characteristic data: validation with computer simulation. Academic Radiology, 4(4): 298-303. doi: 10.1016/S1076-6332(97)80032-3
OR_to_RMH
## Example 1: Computing OR parameters from RMH parameters directly # RMH parameters from first line (A_z = 0.702) of Table 1 in Roe & Metz (1997) # with 50 diseased and 50 nondiseased cases. OR <- RMH_to_OR(n0 = 50, n1 = 50, delta1 = 0.75, delta2 = 0.75, var_R = 0.0055, var_TR = 0.0055, var_C = 0.3, var_TC = 0.3, var_RC = 0.2, var_error = 0.2, b = 1) OR ## Example 2: Computing OR parameters from a data frame of RMH parameters ## --------------------------------------------------------------------- ## Example 2a: RMH parameters from first line (A_z = 0.702) of Table 1 in # Roe & Metz (1997) with 50 diseased and 50 nondiseased cases RM_parms_line1 <- data.frame(n0 = 50, n1 = 50, delta1 = 0.75, delta2 = 0.75, var_R = 0.0055, var_TR = 0.0055, var_C = 0.3, var_TC = 0.3, var_RC = 0.2, var_error = 0.2, b = 1) OR <- RMH_to_OR(RM_parms_line1) OR ## Note below that applying the OR_to_RMH function to the above OR parameters # results in the original RMH parameters within rounding error: check <- OR_to_RMH(OR) check ## Example 2b: RMH parameters from last 3 lines of Table 1 in Roe & Metz (1997) # using 10 diseased and 25 nondiseased cases RM_3_models <- data.frame( rbind( line6 = c(25, 10, 0.75, 0.75, 0.011, 0.011, 0.1, 0.1, 0.2, 0.6, 1), line7 = c(25, 10, 1.50, 1.50, 0.03, 0.03, 0.1, 0.1, 0.2, 0.6, 1), line8 = c(25, 10, 2.5, 2.5, 0.056, 0.056, 0.1, 0.1, 0.2, 0.6, 1) ) ) colnames(RM_3_models) <- c("n0", "n1", "delta1", "delta2", "var_R", "var_TR", "var_C", "var_TC", "var_RC", "var_error", "b") RM_3_models OR_3_models <- RMH_to_OR(RM_3_models) OR_3_models ## Example 2c: RMH parameters from last 3 lines of Table 1 in Hillis (2012) # using 10 diseased and 25 nondiseased cases RM_3_models_Hillis <- data.frame( rbind( line6 = c(25, 25, 0.821, 0.821, 0.0132, 0.0132, 0.1, 0.1, 0.2, 0.6, 0.84566), line7 = c(25, 25, 1.831, 1.831, 0.0447, 0.0447, 0.1, 0.1, 0.2, 0.6, 0.71082), line8 = c(25, 25, 3.661, 3.611, 0.1201, 0.1201, 0.1, 0.1, 0.2, 0.6, 0.55140) ) ) colnames(RM_3_models_Hillis) <- c("n0", "n1", "delta1", "delta2", "var_R", "var_TR", "var_C", "var_TC", "var_RC", "var_error", "b") RM_3_models_Hillis OR_3_models_Hillis <- RMH_to_OR(RM_3_models_Hillis) OR_3_models_Hillis
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.