I am using edgeR to do a differential expression analysis and several of the genes have FDRs reported as 0. My hopefully simple question is this: when writing about this this, I'd like to say "less than 10 ^ -120" or some such, but I don't know the lower bound of what is reported. I apologize if I've missed some obvious documentation on this, I've tried looking through online documentation and other posts here. Please let me know if more information is required. Thank you,
You can find the lower bound for double-precision numbers with .Machine$double.xmin, below which values will be reported as zero by R. However, note that this refers to the lower bound of the original p-values. Treating it as the lower bound for the corrected p-values would not be correct, as the correction should increase the p-value - a fact that is easily overlooked, because zero multiplied by some correction will still be zero.
Instead, a conservative lower bound for the BH-adjusted p-values can be obtained by multiplying the p-value's lower bound by the number of genes. This will probably knock off a couple of orders of magnitude but you should still get an impressively small value. Of course, none of this really matters from a practical perspective. In terms of rejecting the null hypothesis, there's not much difference between a small and very small adjusted p-value.