GO和KEGG是基于不同的分类思想而储存的基因相关功能的数据库,富集分析就是一个把这些功能进行进行整合计算的算法,GO富集,就是研究基因的本质的,从三个层面,分别描述基因的分子功能(molecular function)、细胞组分(cellular component)、参与的生物过程(biological process)。如一个基因,她的分子功能可能是具有催化活性,她的细胞组分,也就是其在细胞中定位为细胞膜,参与的生物过程为蛋白质运输过程,这就是这个基因按照三种不同的分类方式进行的定义。
KEGG和GO的区别主要体现在,GO的三个层面彼此之间是没有任何联系的,KEGG不仅有基因集,还定义了基因和代谢物之间的复杂的相互关系,所以才能叫做pathway,与GO中的生物过程有点类似。
GO数据库的基础就是一个一个的GO term,它们是树状的结构,存在冗余。GO database的root node有三个,分别为BP、CC、MF。KEGG就是人工注释的一张又一张代谢通路,是网状的。GO term是一个纯粹的基因集,没有定义里面基因的相互关系;KEGG不仅有基因集,还定义了基因和代谢物之间的复杂的相互关系,所以才能叫做pathway。论相似性,从纯基因集的角度,GO的BP和KEGG有较高的相似性。GO一般用来找差异基因引起的功能改变,KEGG则寻找通路上的影响。
但无论是GO还是KEGG,他们的富集方法都基于统计学上的超几何分布。假设有m个背景基因,背景基因中某一通路pathway中注释的基因有n个,而我的基因集中有k个基因,有l个富集到了该通路中,简单来讲就是比