转录组学04 | KEGG与GO通路富集
找到差异基因后,最流程化的的做法就是做一个通路富集,去描述这些基因有什么作用,具体点就是看这些基因共同参与了哪些生物学过程,是否集中在某条信号通路中,是否指向某种潜在的疾病机制,亦或是某个具体的代谢改变。
通路富集
通路:
生物通路(Biological pathway),说白了,就是细胞里一群分子之间按特定顺序发生作用,像传接力一样,完成某个具体功能的过程。常见的有信号转导通路(Signal Transduction Pathways)、代谢通路(Metabolic Pathways)、调控通路(Regulatory Pathways)。 你说某个基因参与某条通路,那你是在哪查的?这些通路是谁定义的?又是谁说这些基因归属于这个通路的?因为我们要分析“哪些通路富集了”,总得先有地方查这些通路对吧?这就引出了KEGG和GO两个生物信息学中最基础、最常用的知识库。
富集:
我们经常说某条通路“被富集”,靠的正是一个经典的统计模型:超几何分布(Hypergeometric Distribution)。
给定:

那么这个“命中 k 个或更多”基因的概率(即 p 值)是:

如果这个 p 值很小(比如 < 0.05 或 < 0.01),我们就说这个通路在你挑出的差异基因中被显著富集。
重要提醒
不管是 KEGG 还是 GO 富集,输入的基因 ID 必!须!是!ENTREZ ID!听懂掌声
library(org.Hs.eg.db)
library(clusterProfiler)
gene_list <- deg$gene
entrez_ids <- bitr(gene_list, fromType = "ENSEMBL",
toType = "ENTREZID",
OrgDb = org.Hs.eg.db)
KEGG
KEGG,全名是 Kyoto Encyclopedia of Genes and Genomes,由日本京都大学开发维护,它像一本“生化流程图大百科”,把细胞里各种生物过程(代谢、信号转导、疾病机制等)都画成了路线图。
# KEGG 要使用 ENTREZ ID,并指定物种(hsa = Homo sapiens)
kegg <- enrichKEGG(gene = entrez_ids$ENTREZID,
organism = 'hsa',
pvalueCutoff = 0.05)
GO
GO,全名是 Gene Ontology,是一个更偏向功能注释的数据库,GO 和 KEGG 不太一样,它不是路线图,也不强调通路结构,而是提供一种标准化的功能术语体系,每个术语叫一个 GO term。
GO 有三个维度:
BP(Biological Process):生物过程例:细胞凋亡、DNA修复、炎症反应
MF(Molecular Function):分子功能例:ATP酶活性、蛋白结合
CC(Cellular Component):细胞组成
例:线粒体、核糖体、细胞膜
ego <- enrichGO(gene = entrez_ids$ENTREZID,
OrgDb = org.Hs.eg.db,
ont = "BP", # "BP"=生物过程,"MF"=分子功能,"CC"=细胞组分
pAdjustMethod = "BH",
pvalueCutoff = 0.05,
qvalueCutoff = 0.05,
readable = TRUE)
可视化
常用气泡图和条形图,GO与KEGG的名字可以相互替换
##可视化
library(enrichplot)
# GO 气泡图
dotplot(ego,
x = "GeneRatio", # x轴,默认是 GeneRatio(命中率)
color = "p.adjust", # 气泡颜色代表什么,常用 p.adjust
size = "Count", # 气泡大小代表什么,通常是富集基因数量
showCategory = 10, # 展示前几个通路
font.size = 12, # 控制整体字体大小
title = "GO Biological Process" # 标题
)
# KEGG 条形图
barplot(kegg,
x = "Count", # x轴可以改为 Count(命中数量)或 GeneRatio(命中率)
showCategory = 10,
color = "p.adjust", # 条形颜色根据 p 值映射
font.size = 12,
title = "KEGG Pathways")


版权声明:
作者:dingding
链接:https://www.techfm.club/p/219377.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论