Si mi variable de respuesta, tiene 2 niveles, 0 y 1, puede utilizar una curva ROC para evaluar la exactitud de mi modelo predictivo. Pero ¿qué pasa si mi variable de respuesta tiene 3 niveles, -1, 0 y 1? Es allí una manera a la trama de "ROC superficies" en R?
Comencé a tratar de este código hasta mí, pero yo no podía entender cómo calcular y graficar la superficie.
library(rpart)
library(randomForest)
y <- as.factor(c(-1,-1,-1,0,0,0,1,1,1,1,1,0,0,0,1,1,1,-1,0,1,0,1,0,-1,0,-1,0,-1,1,0))
x1 <- rnorm(1:30)
x2 <- rnorm(1:30)
x3 <- rnorm(1:30)
model <- randomForest(y~x1+x2+x3)
model
y1 <- predict(model,type='prob')
DF <- data.frame(y=as.numeric(as.character(y)),'negone'=y1[,'-1'],'zero'=y1[,'0'],'one'=y1[,'1'])
DF$FPrOne <-
DF$FPrNegOne <-
DF$TPR <-
library(rgl)
plot3d(DF$FPrOne,DF$FPrNegOne,DF$TPR,type=1)