# AUC: Calculates the AUC of an ROC curve. In genscore: Generalized Score Matching Estimators

## Description

Calculates the area under an ROC curve (AUC).

## Usage

 `1` ```AUC(tpfp) ```

## Arguments

 `tpfp` A matrix with two columns, the true positive and the false positive rates.

## Value

A number between 0 and 1, the area under the curve (AUC).

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25``` ```n <- 40 p <- 50 mu <- rep(0, p) tol <- 1e-8 K <- cov_cons(mode="sub", p=p, seed=1, spars=0.2, eig=0.1, subgraphs=10) true_edges <- which(abs(K) > tol & diag(p) == 0) dm <- 1 + (1-1/(1+4*exp(1)*max(6*log(p)/n, sqrt(6*log(p)/n)))) set.seed(1) domain <- make_domain("R+", p=p) x <- tmvtnorm::rtmvnorm(n, mean = mu, sigma = solve(K), lower = rep(0, p), upper = rep(Inf, p), algorithm = "gibbs", burn.in.samples = 100, thinning = 10) est <- estimate(x, setting="gaussian", elts=NULL, domain=domain, centered=TRUE, symmetric="symmetric", lambda_length=100, mode="min_pow", param1=1, param2=3, diagonal_multiplier=dm) # Apply tp_fp to each estimated edges set for each lambda TP_FP <- t(sapply(est\$edgess, function(edges){tp_fp(edges, true_edges, p)})) old.par <- par(mfrow=c(1,1), mar=c(5,5,5,5)) auc <- AUC(TP_FP) plot(c(), c(), ylim=c(0,1), xlim=c(0,1), cex.lab=1, main=paste("ROC curve, AUC",round(auc,4)), xlab="False Positives", ylab="True Positives") points(TP_FP[,2], TP_FP[,1], type="l") points(c(0,1), c(0,1), type = "l", lty = 2) par(old.par) ```

genscore documentation built on April 28, 2020, 1:06 a.m.