Problem z lines
, podejściem jest, że nie ma generic S4
funkcja linii dla obiektu klasy performance
zdefiniowana w pakiecie ROCR
. Ale możesz użyć ogólnej funkcji fabuły, jak to robiłeś z dodatkowym argumentem add = TRUE
. Na przykład jest to częściowo z przykładowej stronie ?plot.performance
:
library(ROCR)
data(ROCR.simple)
pred <- prediction(ROCR.simple$predictions, ROCR.simple$labels)
pred2 <- prediction(abs(ROCR.simple$predictions +
rnorm(length(ROCR.simple$predictions), 0, 0.1)),
ROCR.simple$labels)
perf <- performance(pred, "tpr", "fpr")
perf2 <- performance(pred2, "tpr", "fpr")
plot(perf, colorize = TRUE)
plot(perf2, add = TRUE, colorize = TRUE)
OR, można przechowywać wszystkie swoje prognozy w matrycy i wykonać wszystkie kolejne kroki w jednym:
preds <- cbind(p1 = ROCR.simple$predictions,
p2 = abs(ROCR.simple$predictions +
rnorm(length(ROCR.simple$predictions), 0, 0.1)))
pred.mat <- prediction(preds, labels = matrix(ROCR.simple$labels,
nrow = length(ROCR.simple$labels), ncol = 2))
perf.mat <- performance(pred.mat, "tpr", "fpr")
plot(perf.mat, colorize = TRUE)
Btw, jeśli ciebie z jakiegoś powodu naprawdę chciał użyć lines
do wykreślenia kolejnych krzywych ROC, które musiałbyś zrobić. tak:
plot(perf)
lines([email protected][[1]], [email protected][[1]], col = 2)
Doskonały! Dokładnie to, czego szukałem! – kahlo