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