引言Introduction

一张转录组分析流程示意图,突出counts输入、标准化、差异检验和结果筛选四个环节,背景为实验组与对照组样本对比。

转录组数据很多,但真正难的是把deseq2分析流程 跑通。原始 counts、标准化、p 值、校正、筛选条件,任何一步出错,结果都可能失真。本文用零基础能读懂的方式,拆解 DESeq2 的核心逻辑,帮助医学生、医生和科研人员快速建立正确分析框架。

1. 为什么差异分析离不开DESeq2

1.1 差异分析解决什么问题

差异分析的前提是比较。只要有实验组和对照组,就有可能存在基因表达差异。DESeq2的目标,就是找出受处理、组织类型或时间变化影响的差异基因。

在转录组研究中,常见场景包括以下几类。

  • 不同组织之间的表达差异。
  • 同一组织在不同处理条件下的变化。
  • 同一组织在不同时间点的动态变化。

这些问题都可以通过差异分析回答。后续再接功能富集、通路分析,才能把“变化”解释成“生物学意义”。

1.2 为什么常用DESeq2

在常见工具中,DESeq2和edgeR是转录组差异分析的主力。DESeq2是DESeq的升级版。它对广义线性模型系数算法做了优化,能缓和低表达基因和高变基因对整体结果的影响。

官方目前推荐使用DESeq2,而不是DESeq。
另外,1.22 版本之后,DESeq2 只支持有生物学重复的分析。这一点很关键。生物学重复不是可选项,而是提高结论可信度的基础。

2. DESeq2分析流程的核心逻辑

2.1 输入不是标准化数据,而是原始counts

很多初学者会误以为先做标准化再分析。实际上,DESeq2的输入是原始 counts 数据 。数据结构通常是:

  • 行:基因。
  • 列:样本。
  • 数值:原始计数。

这些 count 不是随意的数字,而是测序 reads 比对到基因编码区后的计数结果。若一个 read 比对到基因 A,count 记为 1。双端测序中,一对 reads 通常记为 1。

counts 与真实表达水平正相关,但也同时受基因长度和测序深度影响。
这就是为什么不能直接拿原始 counts 比较。

2.2 DESeq2分析流程分四步

可以把 deseq2分析流程 简化为四个环节。

  1. 输入原始 counts。
  2. 进行标准化,得到可比的数据。
  3. 计算 fold change,并做显著性检验。
  4. 进行多重假设检验校正,最后筛选差异基因。

这个流程看似简单,但每一步都有明确的统计目的。标准化解决“样本不可比”的问题,检验解决“差异是否真实存在”的问题,校正解决“多重比较导致假阳性过高”的问题。

2.3 DESeq2使用的统计模型

DESeq2基于负二项分布模型 。显著性检验使用 Wald 检验 。多重假设检验校正使用 BH 方法 。这三点不要求初学者立刻推导公式,但要知道它们对应的作用。

  • 负二项分布,适合处理 RNA-seq 计数数据。
  • Wald 检验,用于判断组间差异是否显著。
  • BH 校正,用于控制多次检验带来的假阳性。

这也是DESeq2比简单 t 检验更适合转录组数据的原因。

3. 标准化是DESeq2分析流程的关键一步

3.1 为什么必须标准化

如果不同样本的测序深度不同,原始 counts 会天然不一致。比如一个样本总 count 数是另一个样本的两倍,并不代表它真的表达量更高,往往只是测序更深。

另一种情况是 library composition 不同。比如脑组织和肺组织,特异表达基因本来就不同。某些基因在一个样本中占比很高,在另一个样本中几乎为零。这会影响整体分布,必须校正。

3.2 标准化因子怎么来

DESeq2会计算每个样本的 scaling factor ,也就是标准化因子。核心思想是:假设大多数基因没有差异表达,利用这部分基因估计样本间的偏差。

它的处理逻辑可概括为:

  • 对原始 counts 取 log。
  • 计算每个基因的平均值。
  • 去掉原始值为 0 导致的无穷大项。
  • 计算每个样本相对平均值的偏差。
  • 取偏差的中值,得到每个样本的 scaling factor。
  • 用原始 count 除以该因子,完成标准化。

这个过程的意义很明确。它尽量排除极端基因和不表达基因对整体估计的干扰。

3.3 标准化之后才可以比较

标准化后,样本之间才具备可比性。随后才能计算 fold change,做统计检验,并进一步筛选差异基因。

没有标准化就做差异分析,结论通常不可靠。

4. 从结果到差异基因:如何正确筛选

4.1 结果表里有哪些核心字段

DESeq2结果通常包含以下信息。

  • baseMean。
  • log2FoldChange。
  • pvalue。
  • padj。

其中,baseMean 表示平均表达水平。log2FoldChange 表示差异倍数的对数值。pvalue 是原始显著性检验结果。padj 是校正后的 p 值。

真正用于最终筛选的,通常是 log2FoldChange 和 p 值或 padj。

4.2 常见筛选阈值怎么设

课程知识库中给出的常见筛选条件是:

  • p 值 < 0.05。
  • fold change 绝对值 > 2。

在实际分析中,也常进一步使用校正后的 p 值,比如 padj < 0.05 或 padj < 0.01。更严格的阈值通常更稳健,但也会减少检出的基因数。

选择阈值时,应结合研究目的。如果是探索性分析,可以适当放宽。如果是后续实验验证,通常建议更严格。

4.3 上调和下调如何标记

筛选出差异基因后,通常还会根据 log2FoldChange 生成方向信息。

  • log2FoldChange > 0,为上调。
  • log2FoldChange < 0,为下调。

这个步骤很重要。因为后续做火山图、热图、通路分析时,方向信息能帮助解释生物学趋势。

5. 实战中最容易出错的地方

5.1 分组信息必须准确

DESeq2不仅看 count,还看样本分组。分组标签一旦错误,结果就会整体偏移。构建 colData 时,要确保样本名和分组一一对应。

先确认样本分组,再跑DESeq2,是最基本的质量控制。

5.2 没有生物学重复不要硬上

DESeq2 1.22 之后只支持有生物学重复的数据。即使其他工具在某些情况下可以处理无重复样本,也不代表结果足够可靠。对于转录组研究,重复是统计推断的前提。

5.3 低表达基因要谨慎解释

知识库中提到,DESeq2 对低表达基因会有特殊处理,某些情况下不会提供校正后的 p 值。这个现象并不罕见。它提示我们:低表达、极低 counts、零值过多的基因,解释时必须更谨慎。

6. 用好DESeq2,先理解流程,再追求技巧

6.1 一个可执行的分析顺序

如果你刚接触转录组,可以按这个顺序理解 deseq2分析流程

  1. 准备原始 counts。
  2. 整理样本分组信息。
  3. 构建 DESeqDataSet。
  4. 运行 DESeq。
  5. 查看 sizeFactors。
  6. 提取 results。
  7. 按 p 值和 fold change 筛选。
  8. 标记 up 和 down。
  9. 保存结果文件。

先把流程跑通,再谈参数优化。 这比一开始纠结单个函数更有效。

6.2 结果解释要回到生物学问题

差异分析不是终点。它只是把候选基因筛出来。真正的价值在于把结果放回研究问题中,例如疾病机制、药物反应或组织特异性表达。

只有把统计结果和生物学背景结合,DESeq2的分析才有意义。

总结Conclusion

DESeq2是转录组差异分析中最常用、也最值得掌握的工具之一。它的核心不是复杂代码,而是清晰的分析逻辑:原始 counts 输入,标准化校正偏差,负二项模型做检验,BH 方法控制假阳性,最后基于 fold change 和 p 值筛选差异基因。只要理解 deseq2分析流程 ,就能避免大多数入门错误。

如果你希望更高效地完成转录组分析、少走弯路,可以进一步使用解螺旋 的课程和实战内容,把流程、代码和结果解释一次打通。先理解,再实操,才能把DESeq2真正变成你的分析工具。

解螺旋科研助手企业微信二维码,扫码添加免费领取科研资料礼包,包含AI科研提效、SCI投稿技巧、国自然基金、医学科研绘图、科研软件工具等实用资料