NES exactly 0 (zero)?

44 views
Skip to first unread message

ilian atanassov

unread,
May 23, 2025, 3:05:26 AMMay 23
to webgestalt
Hello,

I experienced several occasions, using WebGestaltR ver 0.4.6, where a geneSet is included in the GSEA analysis, that is it passes the boundaries of the min and max number of genes in the set, but then a Normalized Enrichment Score of zero is reported, attached. The attached table was extracted from the rawGseaResult.rds file. Increasing the number of permutations to 10000 (compared to the default value of 1000) salvaged several of these zero values and two of the geneSets came forward as very significant. 

The evidence that I am providing is anecdotal and is based on analyses done this week. I haven't encountered this behavior with this version of WebGestaltR so far.

My questions are:

1) what might be the reason for NES reported exactly as zero and then the corresponding p_val and fdr reported as 0 and 1 respectively. 

2) How can I try to circumvent this?  I have found a gene set, attached, that is clearly very significant when examining the distribution of ranked scores in the rawGseaResult.rds but the NES is zero and the associated p_val and fdr values are reported as 0 and 1 respectively.  Increasing the number of permutations to 10000 didn't fix the issue for that particular geneSet.

Best wishes,

Ilian

ilian atanassov

unread,
May 23, 2025, 3:06:19 AMMay 23
to webgestalt
MOM_barcode_plot.PNG
permNum_NES_to_zero.pdf

ilian atanassov

unread,
May 23, 2025, 8:44:04 AMMay 23
to webgestalt
Can it be that the the ranks of the genes from the geneSet are so unbalanced (e.g. the geneSet is mostly comprising the top of the score ranks) that the permutation based calculation fails?

ilian atanassov

unread,
May 23, 2025, 9:03:24 AMMay 23
to webgestalt
Performing GSEA using clusterProfiler, resulted in errors: " There were 2 pathways for which P-values were not calculated properly due to unbalanced (positive and negative) gene-level statistic values. For such pathways pval, padj, NES, log2err are set to NA. You can try to increase the value of the argument nPermSimple (for example set it nPermSimple = 10000)  "

I succeeded getting NES and p-values when using 1,000,000 permutations. With WebGestaltR I could set the number of permutations to 10,000 only. It seems that I am working with an edge case where there is such a bias towards the top/bottom of the ranked list that GSEA is failing. 

I would welcome suggestions for overcoming this or presenting the (failed yet biologically very significant) GSEA results. 

ilian atanassov

unread,
Jul 4, 2025, 5:48:44 AMJul 4
to webgestalt
This exchange is relevant for this questions https://github.com/alserglab/fgsea/issues/124
Reply all
Reply to author
Forward
0 new messages