Просмотр исходного кода

Adding se/sp and p-value to ROC plot

Andrej 5 дней назад
Родитель
Сommit
f7cd88d35c
1 измененных файлов с 7 добавлено и 2 удалено
  1. 7 2
      R/roc.R

+ 7 - 2
R/roc.R

@@ -270,8 +270,13 @@ simple.plotROCgg<-function(df,vars,cols,x=0.7,y=0.3,unit="ml",precise="FALSE",ta
          roc_metrics <- simple.compute_roc_metrics(roc)
          auc=simple.getAUC(roc)
          sAUC=simple.sAUC(roc)
-         lab <- base::sprintf("[%s] AUC: %.2f (+- %.2f), OPT THR: %.2f",
-                           var, auc, sAUC, roc_metrics$threshold)
+          #MWU
+         x1=df[df[,target]==1,var]
+         x0=df[df[,target]==0,var]
+         mwu=stats::wilcox.test(x1,x0)
+         lab <- base::sprintf("[%s] AUC: %.2f (%.2f), THR: %.1f se/sp: %.0f/%.0f %% p=%.3f",
+                           var, auc, sAUC, roc_metrics$threshold,
+                           100*roc_metrics$TPR,100-100*roc_metrics$FPR,mwu$p.value)
          xoff=0.05*stats::runif(1)
          yoff=0.05*stats::runif(1)
          g<-g+ggplot2::geom_line(ggplot2::aes(x=!!(roc$FPR+xoff),y=!!(roc$TPR+yoff),color=!!lab),size=1.2)