> 1. I have tried to understand how to extract area-under-curve value by 
> looking at the ROCR document and googling. Still I am not sure if I am doing 
> the right thing. Here is my code, is "auc1" the auc value?
> "
> pred1 <- prediction(resp1,label1)
>
> perf1 <- performance(pred1,"tpr","fpr")
> plot( perf1, type="l",col=1 )
>
> auc1 <- performance(pred1,"auc")
> auc1 <- a...@y.values[[2]]
> "


If you have only one set of predictions and matching class labels, it
would be in a...@y.values[[1]].
If you have multiple sets (as from cross-validation or bootstrapping),
the AUCs would be in a...@y.values[[1]], a...@y.values[[2]], etc.
You can collect all of them for example by unlist(p...@y.values).

Btw, you can use str(auc1) to see the structure of objects.


> 2. I have to compare two models that have very close ROCs. I'd like to have a 
> more distinguishable plot of the ROCs. So is it possible to have a logarithm 
> FP axis which might probably separate them well? Or zoom in the part close to 
> the leftup corner of ROC plot? Or any other ways to make the ROCs more 
> separate?


To "zoom in" to a specific part:
plot(perf1, xlim=c(0,0.2), ylim=c(0.7,1))
plot(perf2, add=TRUE, lty=2, col='red')

If you want logarithmic axes (though I wouldn't personally do this for
a ROC plot), you can set up an empty canvas and add ROC curves to it:
plot(1,1, log='x', xlim=c(0.001,1), ylim=c(0,1), type='n')
plot(perf, add=TRUE)

You can adjust all components of the performance plots. See
?plot.performance and the examples in this slide deck:
http://rocr.bioinf.mpi-sb.mpg.de/ROCR_Talk_Tobias_Sing.ppt

Hope that helps,
  Tobias

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to