I have ~100 sets of genes, and each set includes between 2 and 70 genes. I'd like to perform an enrichment analysis on each of these sets to test if they're enriched for OMIM disease labels. However, I'm encountering a problem where the OMIM codes are too "sparse", such that each OMIM code only occurs maximum once in all gene sets. As far as I can tell, this makes the codes unsuitable for enrichment analysis in this case.

I believe that grouping the OMIM codes could solve this, as long as each group-label occurs multiple times in my lists. Grouping OMIM codes seems doable: for example, OMIM codes 601495, 613500, 613502, and 613506 all refer to types of agammaglobulinemia. I could imagine grouping codes based on something like gene ontology labels.

My question: is there a standard way to group OMIM codes?

I see some papers doing something like this, e.g. http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4458913/, but I'm new to the field and don't know how "standard" approaches like these are.

  • $\begingroup$ Hi and welcome to Biology.SE. Without a clear scientific question to answer there isn't enough information here to answer the question. $\endgroup$
    – James
    Commented Mar 23, 2016 at 0:27
  • $\begingroup$ Thanks for letting me know. I edited my question to include more information. Let me know if I can add more. $\endgroup$ Commented Mar 23, 2016 at 1:23
  • $\begingroup$ It's still hard to tell exactly how you want to group them and to what end, so I've provided a general answer below. I hope it helps! $\endgroup$
    – James
    Commented Mar 23, 2016 at 2:57

2 Answers 2


Based on OMIM ID codes

In a broad sense NIH have already divided the IDs. If all you are checking is OMIM code enrichment, this might be an okay resolution since it can tell you the chromosomal locus (autosomal, sex linked, or mitochondrial).

Each OMIM entry is given a unique six-digit number as summarized below:

1----- (100000- ) 2----- (200000- ) Autosomal loci or phenotypes (entries created before May 15, 1994)

3----- (300000- ) X-linked loci or phenotypes

4----- (400000- ) Y-linked loci or phenotypes

5----- (500000- ) Mitochondrial loci or phenotypes

6----- (600000- ) Autosomal loci or phenotypes (entries created after May 15, 1994)

Other databases as an alternative method.

If you are interested in specific phenotypes, you may need to get more involved.

OMIM doesn't really attempt to group diseases together beyond their ID nomenclature as far as I'm aware. There have been several projects that set out to do this, like the one the question points out, and the examples below. They mostly use phenotypic data in combination with OMIM information.

Two databases that aim to solve this are:

These are tools with controlled vocabulary for phenotypes and associations from OMIM codes. They could help you check for disease/phenotype specific enrichment. This would certainly allow programmatic grouping, although I have not worked with either before and I presume it would be very involved!

It's up to you!

Wikipedia has a list of OMIM codes listed in alphabetical order if you wanted to try to group them manually by whichever criteria you desire.

Without your source code it's hard to tell, but maybe the maximum of one occurrence rate could be a code problem rather than a scientific problem.

  • $\begingroup$ Thanks very much! That's exactly what I was looking for. I tried grouping by different arrangements of the numerical OMIM code (include using the first digit) but I don't think it makes much sense for my application. I'll look at other databases and/or try a custom solution. $\endgroup$ Commented Mar 23, 2016 at 16:48

There's an approach from "Enrichr: interactive and collaborative HTML5 gene list enrichment analysis tool" paper:

The OMIM gene-set library was created directly from the NCBI’s OMIM Morbid Map. We removed diseases with only a few genes and merged diseases with similar names because these are likely made of few subtypes of the same disease. In addition, since most diseases have only few genes, we used our tool, Genes2Networks, to create the OMIM expanded gene-set library. We entered the disease genes as the seed list and expanded the list by identifying proteins that directly interact with at least two of the disease gene products; in other words, we searched for paths that connect two disease gene products with one intermediate protein, resulting in a sub- network that connects the disease genes with additional proteins/genes. Each sub-network for each disease was converted to a gene set.

Enrichr itself has two OMIM libraries in Drugs/Disease categories. Moreover it has Human Phenotype Ontology library and MGI Mammalian Phenotype libraries.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .