ROC Curve Analysis

The ROC Curve calculator evaluates how well a continuous diagnostic measurement discriminates between two groups (diseased vs. non-diseased), by computing the Area Under the Curve (AUC) and identifying the optimal cut-off. Supports single-test and multi-test comparison with DeLong statistical testing.


Step 1 — Choose Single or Multi-test mode

Mode What it does
Single Test One diagnostic test — AUC, optimal cut-off, all metrics
Multi-Test Comparison 2-10 tests on same subjects — AUC comparison via DeLong method

Step 2 — Provide your data

  • Excel Import — map columns to test values and disease status (0/1)
  • Manual Entry — SingleTestInput or MultiTestInput
  • Add Test / Remove Test in multi-test mode

Disease status must be coded as 0 (non-diseased) and 1 (diseased).


Step 3 — Results (Single Test)

  • AUC with 95% CI and p-value (testing AUC != 0.5)
  • AUC interpretation (5 tiers)
  • Optimal cut-off via Youden's Index
  • At optimal cut-off: Sensitivity, Specificity, PPV, NPV, Accuracy, LR+, LR-, DOR
  • ROC Curve plot with Bernstein polynomial smoothing

Step 4 — Results (Multi-Test)

Everything from Single Test for each test, plus:

  • Side-by-side ROC plot
  • Best-performing test identified
  • Pairwise AUC comparison table — DeLong Z-test and p-values
  • Clinical recommendation

A UniversalChatBot is available for discussion.


Statistical methods used

AUC — Mann-Whitney U formulation

Non-parametric: counts concordant pairs between diseased and non-diseased subjects.

Standard error — DeLong (1988)

Var(AUC) = V10/n1 + V01/n2

Multi-test comparison — DeLong covariance

Accounts for correlation between AUCs tested on same subjects:

Z = (AUC_A - AUC_B) / sqrt(Var(AUC_A - AUC_B))

Optimal cut-off — Youden's Index

J = Sensitivity + Specificity - 1 (maximized)

AUC interpretation

AUC Label
< 0.50 Poor (worse than random)
0.50 - 0.70 Poor
0.70 - 0.80 Acceptable
0.80 - 0.90 Excellent
>= 0.90 Outstanding

ROC smoothing — Bernstein polynomials (degree 4-15 based on sample size).