mslSROC function

Plot the Moses-Shapiro-Littenberg SROC curve

Plot the Moses-Shapiro-Littenberg SROC curve

The approach to SROC curve modeling is described in the paper of Moses, Shapiro and Littenberg (1993). It is considered outdated and is included in mada so that users can reproduce older results and compare different SROC curves.

mslSROC(data = NULL, subset=NULL, TP="TP", FN="FN", FP="FP", TN="TN", fpr = NULL, extrapolate = FALSE, correction = 0.5, correction.control = "all", add = FALSE, lty = 1, lwd = 1, col = 1, ...)

Arguments

  • data: any object that can be converted to a data frame with integer variables for observed frequencies of true positives, false negatives, false positives and true negatives. The names of the variables are provided by the arguments TP, FN, FP and TN (see their defaults). Alternatively the data can be a matrix with column names including TP, FN, FP and TN. If no data is specified, the function will check the TP, FN, FP and TN arguments.
  • TP: character or integer: name for vector of integers that is a variable of data or a vector of integers. If data is not NULL, names are expected, otherwise integers are.
  • FN: character or integer: name for vector of integers that is a variable of data or a vector of integers. If data is not NULL, names are expected, otherwise integers are.
  • FP: character or integer: name for vector of integers that is a variable of data or a vector of integers. If data is not NULL, names are expected, otherwise integers are.
  • TN: character or integer: name for vector of integers that is a variable of data or a vector of integers. If data is not NULL, names are expected, otherwise integers are.
  • subset: the rows of data to be used as a subset in all calculations. If NULL (the default) then the complete data is considered.
  • fpr: Points between 0 and 1 on which to draw the SROC curve. Should be tightly spaced. If set to NULL, the default, it will be the vector of numbers 0.01, 0.02, ..., 0.99 and is truncated if the extrapolate argument is FALSE.
  • extrapolate: logical, should the SROC curve be extrapolated beyond the region where false positive rates are observed?
  • correction: numeric, continuity correction applied if zero cells
  • correction.control: character, if set to "all" (the default) the continuity correction is added to the whole data if only one cell in one study is zero. If set to "single" the correction is only applied to rows of the data which have a zero.
  • add: logical, should the SROC curve be added to an existing plot?
  • lty: line type, see lines.
  • lwd: line width, see lines.
  • col: color of SROC, see lines.
  • ...: arguments to be passed on to plotting functions.

Details

Details are found in the paper of Moses, Shapiro and Littenberg (1993).

Returns

Besides plotting the SROC, an invisible list is returned which contains the parameters of the SROC.

References

Moses L.E., Shapiro D., & Littenberg B. (1993) Combining independent studies of a diagnostic test into a summary ROCcurve: data-analytic approaches and some additional considerations. Statistics in Medicine, 12 , 1293--1316.

Author(s)

Philipp Doebler philipp.doebler@googlemail.com

See Also

reitsma-class, talpha, SummaryPts

Examples

## First Example data(Dementia) ROCellipse(Dementia) mslSROC(Dementia, add = TRUE) # Add the MSL-SROC to this plot ## Second Example # Make a fancy plot and look at the coefficients msl_Dementia <- mslSROC(Dementia, col = 3, lwd = 3, lty = 3) msl_Dementia$A2 # intercept on logit SROC space msl_Dementia$B2 # slope on logit SROC space