mslSROC: Plot the Moses-Shapiro-Littenberg SROC curve

View source: R/mslSROC.R

mslSROCR Documentation

Plot the Moses-Shapiro-Littenberg SROC curve

Description

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.

Usage

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).

Value

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

Author(s)

Philipp Doebler <philipp.doebler@googlemail.com>

References

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

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

mada documentation built on Sept. 9, 2022, 3:01 p.m.