专栏名称: 生信师兄
本公众号旨在帮助广大的生信小白更好、更轻松的入门生信,专注生信干货分享。
目录
相关文章推荐
南方人物周刊  ·  向上而生|粉笔的十年 ·  20 小时前  
高分子科技  ·  广西大学林宝凤教授团队 CEJ: ... ·  4 天前  
高分子科学前沿  ·  重磅发布:武书连2025中国大学排名! ·  2 天前  
人物  ·  不规划也没关系 ·  3 天前  
51好读  ›  专栏  ›  生信师兄

GO/KEGG/GSEA富集分析 – Bulk&单细胞通用

生信师兄  · 公众号  ·  · 2025-02-10 10:08

正文

封面
封面

熟悉师兄公众号的都应该清楚,师兄之前的推文主要集中在各种类型的科研绘图上!但是不少粉丝小伙伴们还是反应,只知道绘图,数据不会分析,还是不行的呀!没错,拿不到可靠的分析结果,只知道绘图,这当然是远远不够的!因此, 学习各种常用的生信数据分析则必然成为了每一个生信人必须要经历的事情。 因此,后续的推文中,师兄会尽可能地多更新一些有关数据分析的内容,可能包含的系列包括《R语言数据处理基本技巧》、《从零开始学单细胞转录组》、《从零开始学空间转录组》等;

本系列,师兄将 从单细胞转录组学开始 ,带领大家一起 从零开始学单细胞 !系列内容可以详见下方大纲!

说明: 由于本系列教程还是强调 面对完全零基础小白 ,所以很多内容师兄会介绍的非常细,对于部分已经入门的老手来说可能比较多余,所以 大家选择性阅读即可!

本系列主要内容目录及单细胞学习交流群,请看Part 1;

本期主要内容,请看Part 2;

合作服务器推荐及生信师兄粉丝专属优惠详情,请看Part 3;

如果您觉得本系列文章对你有帮助的话,欢迎 点赞、收藏、在看+转发 !您的支持是师兄持续更新的最大动力!

Part 1 系列介绍

1.1 内容大纲

单细胞转录组系列教程目录
单细胞转录组系列教程目录

1.2 生信师兄单细胞学习交流群

当然了,好的学习过程离不开详尽地交流讨论和重难点答疑!因此,在发布教程的同时,师兄也成立了 《生信师兄单细胞学习交流群》 用于本系列内容的学习交流。需要的小伙伴可以扫描下方二维码,添加师兄微信后备注 “单细胞学习交流群” 付费加群!

师兄微信

1.2.1 群内资源

  • 本系列所有免费及付费内容的配套学习资源、代码资源及示例数据;
群内资源(以上图课程目录为准)
群内资源(以上图课程目录为准)

1.2.2 入群费用

  • 入群费用: ¥299元(每集赞1个抵扣1元,至多抵扣100元!此优惠永久有效!)

1.2.3 本系列不含视频教程

  • 目前,师兄还没有足够的时间进行视频课程的录制,所以 本系列教程不包含视频课程 !但是如果大家需要,师兄也一定会尽可能抽时间录制课程!

  • 如果后续推出视频课程 ,还是和《R语言科研绘图进阶版视频教程》一样, 加群的小伙伴届时可凭借入群截图,抵扣购课差价。 所以,早入群早享受吧!

1.2.4 声明

  • 是否加群,纯属自愿! 本系列的大部分内容会是免费阅读, 所以完全支持白嫖! 但是看完还请动动你的手指, 点个赞!点个在看!如果能转发那就太感谢了!
  • 加群可以 获取本系列所有付费部分内容,代码,示例数据,以及定期答疑的交流群
  • 如果考虑好加群,就 早加早享受,随着群内资源的增加,入群的费用也可能会随之增加
  • 优惠方式 点赞 + 在看,并转发这个系列任意一篇文章至朋友圈,每集赞1个抵扣1元,至多抵扣100元!此优惠永久有效哦!

Part2 主要内容

当你有了一些差异基因之后,首先肯定得看看这些差异基因的功能是啥?那么常见的功能判定方法就是看这些基因主要富集在哪些通路上,进而就有了今天的主题,富集分析!富集分析主要用于研究一组基因的生物学功能,常见的方法包括:

  • GO 富集 :基因功能分类,包括 生物过程(BP) 分子功能(MF) 细胞组分(CC) ,适用于差异基因分析。

  • KEGG 富集 :研究基因在 生物通路和信号传导 中的作用,比如代谢、疾病相关通路等。

  • GSEA :不依赖于差异基因,而是分析 整个基因表达排序 ,寻找特定基因集是否在高/低表达基因中富集,适用于 RNA-seq 或单细胞数据

2.1 数据准备

2.1.1 差异分析得到差异基因

这一步就不多说了,单细胞差异分析可以看前面几节的教程,Bulk RNA-seq差异分析的教程更是遍地都是。总之, 富集分析的第一步是拿到差异基因

这篇文章中,师兄就拿上 一篇文章ifnb数据集中CD14 Mono与其他细胞类型之间的marker基因 来做富集分析。

library(tidyverse)
library(clusterProfiler)
library(org.Hs.eg.db)

load("markers.Rdata")

degs % filter(cluster=="CD14 Mono") %>% pull(gene)

2.1.2 基因ID转换(Entrez ID)

gene_ids                 fromType = "SYMBOL",
                toType = "ENTREZID",
                OrgDb = org.Hs.eg.db)

2.2 GO富集分析

2.2.1 简介

2.2.1.1 Gene Ontology概述

Gene Ontology(GO,基因本体论)是一个国际公认的 基因功能分类系统 ,用于描述基因及其产物的功能。GO 由以下三个主要类别组成:

  • 生物学过程(Biological Process, BP) :基因参与的生物过程,如细胞凋亡、DNA 复制等。

  • 分子功能(Molecular Function, MF) :基因产物的分子功能,如 ATP 结合、DNA 结合等。

  • 细胞组成(Cellular Component, CC) :基因产物所在的细胞位置,如线粒体、细胞膜等。

2.2.1.2 方法
  • 统计目标:基因集中 GO 术语的富集情况,相比于随机基因集是否显著。

  • 常用的方法: 超几何检验(Hypergeometric Test) Fisher 精确检验(Fisher’s Exact Test) Benjamini-Hochberg(BH)校正 以控制多重检验的 FDR。

2.2.1.3 结果解释
  • GO 富集分析的输出通常是一个 有显著 P 值 的 GO 通路列表。通常使用 柱状图、气泡图、网络图 进行可视化。

2.2.2 代码实操

ego                 OrgDb = org.Hs.eg.db,
                keyType = "ENTREZID" ,
                ont = "BP",  # BP:生物过程 MF:分子功能 CC:细胞组分
                pAdjustMethod = "BH",
                pvalueCutoff = 0.05,
                qvalueCutoff = 0.2)

# 基础绘图:
library(patchwork)
barplot(ego, showCategory=20)|dotplot(ego, showCategory=20)
ggsave("basic_plot_GO.pdf", height = 7, width = 14)

2.3 KEGG富集分析

2.3.1 简介

2.3.1.1 KEGG概述

KEGG(京都基因和基因组百科全书)是一个 生物通路数据库 ,主要用于研究基因在 代谢、信号转导、疾病机制等生物学通路 中的富集情况。解析基因与 疾病、药物、环境 之间的关系。

2.3.1.2 方法
  • 统计目标:基因集是否在 KEGG 通路中显著富集;
  • 统计方法:类似于 GO 富集分析: 超几何检验 / Fisher 精确检验 矫正P 值(FDR 纠正) ,此外需要 基因 ID 映射 ,通常使用 Entrez ID (部分软件支持直接使用基因符号)。
2.3.1.3 结果解释
  • KEGG 富集分析的输出通常是一个 有显著 P 值 的 KEGG 通路列表。通常也使用 柱状图、气泡图、网络图 进行可视化。

2.3.2 代码实操

###################### 2. KEGG富集分析 ----------------------
KEGG                    organism = 'hsa',
                   pAdjustMethod = "BH",
                   pvalueCutoff = 0.05,
                   qvalueCutoff = 0.2)

# 基础绘图:
barplot(KEGG, showCategory=20)|dotplot(KEGG, showCategory=20)
ggsave("basic_plot_KEGG.pdf", height = 7, width = 14)

2.4 GSEA分析

2.4.1 简介

2.4.1.1 GSEA概述

GSEA(基因集富集分析)不同于 GO 和 KEGG,它有以下几个特点:

  • 不依赖于人为设定的 差异基因列表 ,而是基于 整个基因表达矩阵
  • 通过基因排序计算 预定义基因集 是否在高表达或低表达的基因集中 显著聚集
  • 适用于 连续表达数据 ,例如 RNA-seq 或微阵列数据。
2.4.1.2 方法
  • 计算 基因排序 (例如根据 logFC 排序)。







请到「今天看啥」查看全文