Я пробовал 2 метода построить кривую ROC и получить AUC для каждой кривой ROC.
Метод 1. Первый метод прост, но я не знаю, как построить несколько кривых ROC вместе. Я просто использую roc.curve(hacide.test$cls, pred_rose[,2])
, вывод покажет кривую ROC и даст мне AUC.
Метод 2. Теперь я могу построить несколько кривых ROC вместе, но не могу получить AUC одновременно. Вот так я строю вместе несколько кривых ROC:
library(ROCR)
pd1 <- prediction(pred_rose[,2], hacide.test$cls)
pf1 <- performance(pd1, "tpr","fpr")
pd2 <- prediction(pred_both[,2], hacide.test$cls)
pf2 <- performance(pd2, "tpr","fpr")
plot(pf1, colorize = TRUE)
plot(pf2, add = TRUE, colorize = TRUE)
Вот как я получаю AUC:
pf <- performance(pd3, "auc")
pf # y.values is the AUC
Как видите, когда я использую этот второй метод, метод performance()
, используемый для получения кривой ROC и AUC, отличается. Выходные данные pf1, pf2 здесь не имеют значений AUC.
Метод 1 проще, но знаете ли вы, как я могу использовать метод 1 для построения кривых ROC вместе, сохраняя при этом все значения AUC?