Две кривые ROC можно сравнить с помощью pROC roc.test()
. Это также производит р-значение. Кроме того, использование roc(..., auc=TRUE, ci=TRUE)
даст вам более низкие и более высокие доверительные интервалы вместе с AUC в выходных данных при создании объекта ROC, что может быть полезно.
Ниже приведен пример рабочего кода, который проверяет, являются ли мили на галлон или вес автомобиля лучшим индикатором типа трансмиссии, которой он оснащен (автоматический или ручной):
library(pROC)
roc_object_1 <- roc(mtcars$am, mtcars$mpg, auc=T, ci=T) #gives AUC and CI
roc_object_2 <- roc(mtcars$am, mtcars$wt, auc=T, ci=T) #gives AUC and CI
roc.test(roc_object_1, roc_object_2) #gives p-value
Кажется, вес значительно лучше предсказывает, чем расход топлива. Однако здесь сравниваются две кривые, а не одна кривая с таким числом, как 0,5. Глядя на доверительный интервал, чтобы увидеть, содержит ли оно число 0,5, мы узнаем, существенно ли оно отличается, но не дает p-значения.