pvalue equal to 0

44 views
Skip to first unread message

Alex Campos

unread,
Mar 20, 2015, 2:12:24 AM3/20/15
to mss...@googlegroups.com
Hi all,
I have found that some of my proteins gives a pvalue and adj.pvalue equal to 0. I guess that this is because MSstats (or one of the dependencies) is rounding up a very small number. This is a little annoying when it comes to graphical visualization (e.g., -log10 of 0 in volcano plot can not be displayed). My workaround was to replace 0 by a very small number, but I don't want to 'replace' values after a statistical test. Does anyone know a way to avoid these 0's??

Thank you everyone,
Alex


 

James Webber

unread,
Mar 20, 2015, 3:30:59 PM3/20/15
to mss...@googlegroups.com
This is floating-point underflow and it's not really avoidable--as you suspect, it comes from calculating p-values that are too small for the computer to represent. So on the plus side, you have some very significant ratios!

When I'm calculating -log p-values I usually will replace -log(zero) with -log(smallest non-zero p-value) + 1 or something like that. That is, you want to signal that the p-value is lower than the lowest non-zero value you see, but also allow it to be visible and not shockingly far from the rest of your data. As long as you document this, it's a totally reasonable thing to do.

Olga Vitek

unread,
Mar 21, 2015, 12:13:39 PM3/21/15
to mss...@googlegroups.com
This is a good advice. It is very common to replace very large values of -log(p-value) by a constant. This indicates that the true values are above the limit of the y axis of the graph.

Alex Campos

unread,
Mar 24, 2015, 11:48:44 PM3/24/15
to mss...@googlegroups.com
Hi James and Olga,
Thanks for your comments. I was actually replacing the zeros by min(df$adj.pvalue)/10. 
best,
Alex


Reply all
Reply to author
Forward
0 new messages