Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

rocdemo.sca

function to build objects of class 'rocc'


Description

rocdemo.sca – demonstrate 'rocc' class construction using a scalar marker and simple functional rule

Usage

rocdemo.sca(truth, data, rule=NULL, 
       cutpts=NA,
       markerLabel="unnamed marker", caseLabel="unnamed diagnosis",
       quiet=TRUE)

Arguments

truth

true classification of objects. Must take values 0 or 1.

data

quantitative markers used to classify

rule

rule: a function with arguments (x, thresh) returning 0 or 1. If no rule is provided or the standard rule dxrule.sca is passed, a faster C-based implementation is used to compute sensitivity and specificity.

cutpts

values of thresholds; no NA allowed, or they will be recomputed using smallest gap between data points with distinct values

markerLabel

textual label describing marker

caseLabel

textual label describing classification

quiet

defaults to TRUE, suppressing message about discovery of NA in cutpts

Details

dxrule.sca is function (x, thresh) ifelse(x > thresh, 1, 0)

The default value of argument cutpts is a point less than min(data), points separating the unique values of data and a point greater than max(data).

Value

an object of S4 class rocc

Author(s)

Vince Carey (stvjc@channing.harvard.edu)

See Also

AUC

Examples

set.seed(123)
R1 <- rocdemo.sca( rbinom(40,1,.3), rnorm(40), caseLabel="new case", markerLabel="demo Marker" )
plot(R1, line=TRUE, show.thresh=TRUE)

truth <- c(0, 1, 0, 1, 1, 0, 1, 1)
data <- c(2, 3, 4, 4, 5, 6, 7, 8)
R2 <- rocdemo.sca(truth, data, dxrule.sca)
plot(R2, line=TRUE, show.thresh=TRUE)
R3 <- rocdemo.sca(truth, data, function(x, thresh) 1 - dxrule.sca(x, thresh))
if (AUC(R2) + AUC(R3) != 1) stop('Sum of AUCs should be 1.')
#
# more involved
#
set.seed(1234)
x = runif(1000)
w = runif(1000)
z = rbinom(1000, 1, plogis(-2.7+6.2*x + .3*w))
m1 = glm(z~x, fam=binomial)
demorule.glm.clo = function(model) function(w,thresh)
 ifelse(predict(model, newdata=list(x=w), type="response")>thresh, 1, 0)
demorule.glm = demorule.glm.clo(m1)
R4 = rocdemo.sca(z, x, demorule.glm )
plot(R4)

ROC

utilities for ROC, with microarray focus

v1.66.0
Artistic-2.0
Authors
Vince Carey <stvjc@channing.harvard.edu>, Henning Redestig for C++ language enhancements
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.