11 days ago by

Walter and Eliza Hall Institute of Medical Research, Melbourne, Australia

No, the number of rotations is not dependent on the number of gene sets in the way that you are thinking.

All the rotations are applied simultaneously to all genes (and hence to all gene sets). If you set nrot=10000, then every gene and every gene set will get 10,000 rotations. That remains true no matter how many genes or sets there are.

There is a dependence, however, between the number of gene sets and the number of rotations that you need to get a significant FDR value. The smallest two-sided p-value that `mroast`

can give for any set is `1/(nrot+1)`

. If you have a lot of gene sets, then you will need to choose `nrot`

large so that small p-values are possible, otherwise you won't end up with any significant gene sets after adjustment for multiple testing.

If the number of gene sets is very large, then the number of rotations needed to get fine resolution of the most significant sets can be prohibitive, so we recommend that you switch to `fry()`

or `camera()`

instead.