Я хотел бы построить сегмент кривой ROC для определенного диапазона значений x вместо построения всей кривой. Я не хочу менять диапазон самой оси x. Я просто хочу построить только часть кривой ROC в диапазоне значений x, которые я укажу.
library(pROC)
data(aSAH)
rocobj <- roc(aSAH$outcome, aSAH$wfns)
plot(rocobj)
Этот код отображает всю кривую ROC. Допустим, я просто хотел построить кривую от x=1 до x=0,5. Как я мог это сделать? Спасибо.
У меня есть данные, которые формируют эмпирическую ROC, которая должна распространяться только на минимальную специфичность, существующую в данных. Но pROC расширяет кривую ROC вверх по диагонали. У меня есть это: связь Но я хочу, чтобы он не отображал правильную часть. Я думаю, что вариант решения Дилана будет работать.
Минимальная специфичность, существующая в любом наборе данных, равна 0. Вы всегда можете иметь порог на -бесконечности и классифицировать все отрицательные значения как ложноположительные.
Функция plot
pROC использует обычную семантику R для построения графиков, поэтому вы можете использовать аргумент xlim
так же, как и для любого другого графика:
plot(rocobj, xlim = c(1, .5))
Спасибо. Однако это смещает диапазон оси x, чего я не хочу делать. Я все еще хочу, чтобы ось X отображала от 0 до 1. Но я хочу, чтобы был построен только сегмент кривой ROC.
Функция построения графика по умолчанию для объектов roc отображает чувствительность rocobj$ как функцию особенностей rocobj$.
Так
plot(rocobj$specificities,rocobj$sensitivities,type = "l",xlim=c(1.5,-0.5))
abline(1,-1)
достигает того же, что и
plot(rocobj)
А также
plot(rocobj$specificities[2:6],rocobj$sensitivities[2:6],type = "l",xlim=c(1.5,-0.5),ylim=c(0,1))
abline(1,-1)
Приближается к тому, что, как я думаю, вам нужно (графики от 0,514 до 1,0). Я недостаточно знаю о пакете, чтобы знать, можно ли рассчитать чувствительность в определенном диапазоне или разрешении особенностей.
Спасибо! Какой-то вариант этого подхода должен в конечном итоге работать. Однако при xlim=c(1,0). Непосредственное построение самих особенностей и чувствительности было прорывом; Я могу выбрать только часть этих списков для использования, как вы предложили.
Чего вы пытаетесь достичь, замышляя это? Один из способов — использовать
1-rocobj$specificities
,rocobj$sensitivities