Email updates

Keep up to date with the latest news and content from BMC Bioinformatics and BioMed Central.

Open Access Highly Accessed Open Badges Methodology article

The language of gene ontology: a Zipf’s law analysis

Leila Ranandeh Kalankesh13, Robert Stevens1 and Andy Brass12*

Author Affiliations

1 School of Computer Science, University of Manchester, Oxford Road, Manchester, M13 9PL, UK

2 Faculty of Life Sciences, University of Manchester, Oxford Road, Manchester, M13 9PL, UK

3 Current address: Tabriz University of Medical Science, Tabriz, Iran

For all author emails, please log on.

BMC Bioinformatics 2012, 13:127  doi:10.1186/1471-2105-13-127

Published: 7 June 2012



Most major genome projects and sequence databases provide a GO annotation of their data, either automatically or through human annotators, creating a large corpus of data written in the language of GO. Texts written in natural language show a statistical power law behaviour, Zipf’s law, the exponent of which can provide useful information on the nature of the language being used. We have therefore explored the hypothesis that collections of GO annotations will show similar statistical behaviours to natural language.


Annotations from the Gene Ontology Annotation project were found to follow Zipf’s law. Surprisingly, the measured power law exponents were consistently different between annotation captured using the three GO sub-ontologies in the corpora (function, process and component). On filtering the corpora using GO evidence codes we found that the value of the measured power law exponent responded in a predictable way as a function of the evidence codes used to support the annotation.


Techniques from computational linguistics can provide new insights into the annotation process. GO annotations show similar statistical behaviours to those seen in natural language with measured exponents that provide a signal which correlates with the nature of the evidence codes used to support the annotations, suggesting that the measured exponent might provide a signal regarding the information content of the annotation.