Изменить значения отсечки ROC, используя пакет AUC в R
Я строю ROC-участки в R, используя пакет AUC.
Это первые 5 точек набора данных из 300 точек, сравнивающих вероятность выживания с наблюдаемой выживаемостью.
predict1 <- c(0.755, 0.755, 0.937, 0.978, 0.755)
y <- c(1,1,1,0,1)
ROC_null_a <- auc(roc(predict1, as.factor(y)))
plot(roc(predict1, as.factor(y)))
Я хотел бы изменить предельные значения для участка ROC. В документации описаны эти значения, но не указано, как на самом деле использовать их в функциях roc или auc:
"Значение
Список, содержащий следующие элементы:
cutoffs A numeric vector of threshold values
fpr A numeric vector of false positive rates corresponding to the threshold values
tpr A numeric vector of true positive rates corresponding to the threshold values"
Примеры включают только базовую функцию и не демонстрируют использование cutoffs, tpr или fpr.
Я озадачен тем, как включить значения отсечки в функцию roc. Кто-нибудь раньше использовал значения отсечки в пакете AUC? Я знаю, что это может быть сделано с другими пакетами, но хотел бы придерживаться этого пакета, если это возможно, так как мои данные и код уже настроены для него.
1 ответ
Звучит так, как будто вы хотите вычислить истинную положительную скорость (TPR) и ложную положительную скорость (FPR), соответствующую определенной вероятности отсечки. Рассмотрите возможность вычисления объекта roc для ваших данных:
library(AUC)
predict1 <- c(0.755, 0.755, 0.937, 0.978, 0.755)
y <- c(1,1,1,0,1)
r <- roc(predict1, as.factor(y))
Учитывая срез р (я установил его на 0,85 ниже), вы можете использовать r$cutoffs
чтобы вычислить местоположение в выводимом объекте ROC, соответствующее выбранному отсечению:
p <- 0.85
index <- max(which(r$cutoffs >= p))
Наконец, вы можете посмотреть TPR и FPR в вычисленном месте:
r$tpr[index]
# [1] 0.25
r$fpr[index]
# [1] 1
В этом случае мы можем вручную подтвердить, что этот результат верен: 1/4 (25%) положительных наблюдений имеют прогнозируемое значение 0,85 или более, подтверждая TPR 0,25, а 1/1 (100%) отрицательных наблюдений имеют прогнозируемое значение 0,85 или более, подтверждая FPR 1.