pROC - изменение масштаба диаграммы ROC
Я использую следующий код для построения кривой ROC после выполнения логистической регрессии.
fit1 <- glm(formula=GB160M3~Behvscore, data=eflscr,family="binomial", na.action = na.exclude)
prob1=predict(fit1, type=c("response"))
eflscr$prob1 = prob1
library(pROC)
g1 <- roc(GB160M3~prob1, data=eflscr, plot=TRUE, grid=TRUE, print.auc=TRUE)
Кривые ROC выглядят так (см. Ссылку ниже)
- Шкала оси X не заполняет диаграмму ВОЗ.
- Как я могу изменить ось х для отчета 1 - конкретно?
2 ответа
По умолчанию наборы pROC
asp = 1
чтобы гарантировать, что сюжет квадратный и чувствительность и специфичность находятся в одном масштабе. Вы можете установить его наNA
или жеNULL
освободить ось и заполнить график, но ваша кривая ROC будет иметь неправильную форму.plot(g1, asp = NA)
С помощью
par(pty="s")
как предполагает Джо, вероятно, лучший подходЭто просто проблема маркировки: обратите внимание, что ось x уменьшается с 1 до 0, что в точности соответствует построению 1-специфичности на возрастающей оси. Вы можете установить
legacy.axes
аргументTRUE
изменить поведение, если по умолчанию вас беспокоит.plot(g1, legacy.axes = TRUE)
1) Выполните следующее перед построением графика:
par(pty="s")
(Между прочим, я предполагаю, что вам нужен квадратный график, как это обычно делают кривые ROC.)
2) Используйте xlab
аргумент, как вы бы с нормальным plot
,
plot(g1, xlab = "1 - Specificity")