一直都搞不清楚这两者的具体区别。
其实初学者搞不清楚很正常,因为它们的本质是相通的,都是对基因进行归类注释的数据库。
建议初学者自己使用一下这两个数据库,应该很快就能明白其中的区别。
以下以一个案例来详细说明两者的区别:
推荐一个没有任何基础的人都能使用的gene set注释工具
http://www.webgestalt.org/option.php
GCLC TFPI HSPB6 TSPOAP1 ITGA2B OSBPL7 BAIAP2L1 NOS2 PAX6 CD4 PIK3C2A PRICKLE3 RGPD5 PLEKHB1 EHD2 RRAGD FAS PNPLA6 ATP6V1H RRM2B FSTL4 LAMA3 SYNE2 SLC2A3 PSD DGAT2 SEZ6 SLC6A16 CHI3L2 GSTO2 SEC61A2 TLE2 SLC9A7 ZMYND12 NGEF METTL22 RASGRP2 PITX1 GAL DRD4 PTPN3 MYO3B LNX1 ACAP1 PANX2 LLGL2 CLCN4 FMO4 TPD52 NMRK2 MAP2 RBFOX1 MYH7B RAPGEF3 RFX3 IGSF9B CROCCP3 OVGP1 SNX10 HSD17B2 HSD17B14 FTL MT3 LPCAT2 TESC LYZ GOLGA3 EFNB1 MYO15A ZFHX4 JAK2 ERMP1 HSD17B7P2 CATSPERG PICK1 ACR PVALB PROCR SGK2 EEF1A2 SIRPB1 MROH8 LIPG LAMA1 NOL4 GPR143
把以上gene copy到txt里,命名为gene.txt
选项如下:
提交。。。
结果如下:
这是一种GO的分析结果,可以看到我们的基因被归类到一个一个的叫GO term的东西里。
GO数据库是一个树状的结构,顶层有三个根节点,分别问:BP,MF和CC。(具体是啥百度一下即可知)
同样我们把 Select Functional Database 改成 “pathway”,选“KEGG”就可以做道谢通路富集了。
KEGG数据库是网状的,由很多张以下的图组成,都是人工注释的。
以上使用的都是ORA方法,还有一种著名的工具叫做GSEA (Select Method of Interest里选择)。
GSEA 还可以利用每个基因的 rank 信息,来做富集分析。
总结一下:
GO数据库的基础就是一个一个的GO term,它们是树状的结构,存在冗余。GO database的root node有三个,分别为BP、CC、MF。KEGG就是人工注释的一张又一张代谢通路,是网状的。
GO term是一个纯粹的基因集,没有定义里面基因的相互关系;KEGG不仅有基因集,还定义了基因和代谢物之间的复杂的相互关系,所以才能叫做pathway。
论相似性,从纯基因集的角度,GO的BP和KEGG有较高的相似性。
进阶推荐:
想用R做GO和KEGG注释的可以看我的其他文章。
R获取指定GO term和KEGG pathway的gene list基因集
GSEA - Gene set enrichment analysis 基因集富集 | ORA - Over-Representation Analysis
参考: