Skip to content

Instantly share code, notes, and snippets.

View nagarindkx's full-sized avatar

Kanakorn Horsiritham nagarindkx

  • DIDA, Faculty of Medicine, Prince of Songkla Univerity
  • THAILAND
View GitHub Profile
@nagarindkx
nagarindkx / roc_auc_ci.py
Created December 20, 2022 05:54 — forked from doraneko94/roc_auc_ci.py
Calculating confidence interval of ROC-AUC.
from sklearn.metrics import roc_auc_score
from math import sqrt
def roc_auc_ci(y_true, y_score, positive=1):
AUC = roc_auc_score(y_true, y_score)
N1 = sum(y_true == positive)
N2 = sum(y_true != positive)
Q1 = AUC / (2 - AUC)
Q2 = 2*AUC**2 / (1 + AUC)
SE_AUC = sqrt((AUC*(1 - AUC) + (N1 - 1)*(Q1 - AUC**2) + (N2 - 1)*(Q2 - AUC**2)) / (N1*N2))