After we get either the list of significant genes or gene-expression fold change, we would like to understand what these genes mean biologically. Functional annotation allows to make sense from the set of genes. Sets of genes characterize biological processes much better than single genes.
The Gene Ontology (GO) is a major bioinformatics initiative to unify the representation of gene and gene product attributes across all species. The ontology covers three domains:
Biological Processes - operations or sets of molecular events with a defined beginning and end, pertinent to the functioning of integrated living units
Molecular Functions - the elemental activities of a gene product at the molecular level, such as binding or catalysis
Cellular Components - the parts of a cell or its extracellular environment
Usually 2 methods are considered [1-2]. Later topology-based method [3] was added
Over-representation Analysis (ORA), e.g. topGO and clusterProfiler
Gene Set Enrichment Analysis (GSEA) e.g. GSEA clusterProfiler
Note regarding ORA:
Enrichr - ORA on many gene sets
David - a comprehensive set of functional annotation tools to help understand the biological meaning behind large gene lists
Reactome - Reactome is a free, open-source, curated and peer-reviewed pathway database
WikiPathways is an open science platform for biological pathways contributed, updated, and used by the research community