How should I set my eps value in cluster profiler?
0
0
Entering edit mode
ummscr • 0
@f86d7e99
Last seen 6 days ago
United Kingdom

Hi! I am trying to use the gseGo function in clusterprofiler for the first time. My code was as follows:

gse <- gseGO(geneList=geneList,
ont='ALL',
keyType = "ENSEMBL",
minGSSize = 3,
maxGSSize = 800,
pvalueCutoff = 0.05,
verbose = TRUE,
OrgDb = "org.Hs.eg.db",


I get this warning message:

In fgseaMultilevel (...)  :
For some pathways, in reality P-values are less than 1e-10. You can set the 'eps' argument to zero for better estimation.


It seems like I'm being told I need to set it to 1e-10 but I'm unsure of what this actually means? I know that "This parameter sets the boundary for calculating the p value" but the p value of wether the pathway is enriched? Could anyone offer advice on this output/ a resource explaining it. TIA!

clusterProfiler • 125 views
1
Entering edit mode

Under the hood clusterProfiler makes use of a (fast) GSEA algorithm implemented in the package fgsea (function fgseaMultilevel). The warning is thus thrown by fgsea, not clusterProfiler.

According to the tutorial page of fgsea (here):

As you can see from the warning, fgsea has a default lower bound eps=1e-10 for estimating P-values. If you need to estimate P-value more accurately, you can set the eps argument to zero in the fgsea function.

In other words, setting the tuning constant eps (epsilon) to zero (eps = 0) would increase the accuracy of the p-value calculations of the enriched gene sets. To check how this exactly works, you may want to have a look at the fgsea manuscript posted at bioRxiv, or maybe Alex (author fgsea package) will chime in to explain... I don't know about the details...