When I enter a list of gene names into common gene ontology (GO) term enricher (e.g. MsigDB or ToppGene) only a small fraction of genes is actually used for the enrichment:

msigdb gene restriction

I am struggling to understand why precisely only such a small number of genes is mapped here.

My dataset is mapped with the GENCODE annotation. What annotation is the base of gene ontology? (The picture mentions entrez genes)


1 Answer 1


What is "click here for details" saying? That link should contain an explanation of what happened.

GSEA usually requires entrez_id to run. If your list contains gene_symbols, then before enrichment, you need to convert the genes names. This can and is (always) tricky as genes are known with different names. For example, by googling I couldn't find any AASS3 gene, but I found AASS, which is also named LKRSDH,LORSDH, and LKR/SDH. Depending on the software you are using for conversion, and the genome version used some genes will be missed. I usually run (in R) a combination of geneSynonym and biomaRt to fill the gaps in the lists.

Even better, would be to use ensembl_id or even better entrez_id directly

  • $\begingroup$ Hi thank you, you solved it! (1) The blue table in the picture is revealed after clicking on click here. (2) These interfaces work usually well with gene symbols. (3) Do you know if there are less gene with an entrez_id than specific in GENCODE? (4) Actually you pointed out right that AASS3 does not exist. It turns out I used the wrong column in my table to select the genes: AASS3 was just a unique row name for AASS $\endgroup$
    – Tapper
    Commented Nov 18, 2019 at 17:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.