Solved – How to calculate a ROC curve? What kind of inputs do you need for that

rroc

I have a microarray data which I ran through a continuous covariate (say "X"). I did this using 4 different methods.

For the results obtained from each of the 4 methods, I have the following from each of the 4:

  1. p-value,
  2. FDR significant value,
  3. "Bonferonni significance" (saying "true" or "false")
  4. "Holm significance" (saying "true" or "false")

I wish to obtain an ROC curve showing lines for sensitivity and specificity from each of the 4 methods.

I kind of know what is an ROC curve, but even after reading through a few links, I dont feel clear of the concept of what kind of input it needs to create it. So I apologise if this seems to be a dummy question.

So my questions are:

  1. Can a ROC curve be created from the 4 values (p value, FDR, Bonferoni & Holm) which I have mentioned above? Or is it that I have to calculate the FP and FN first?

  2. Can you suggest me an easy to use package which could do this for me, by giving me a ROC curve with lines of 4 methods using the input above?

Your help appreciated. Thanking you in advance.

Best Answer

ROC curve exists only when you have a binary true decision and a continuous prediction score that an object belongs to one of those two classes.

So, ROC is possible only for p-value and FDR; for Bonferonni and Holm use some binary prediction accuracy measure like precision, recall, F-score, accuracy, whatever.

As for an R package, try ROCR; if you only want AUROC or just something simple (RORC may feel overwhelming and is in general pretty slow) yet less functional, use colAUC from caTools.