RNA 测序完成比对之后,很多人首先查看总体比对率。这个数字有助于发现严重的参考不匹配或数据问题,但它不能告诉我们每条读段是否按照预期的外显子结构完成比对。读段的一部分可以被软剪切,剩下的部分仍然成功匹配,因此“比对成功”和“剪接连接被正确表示”是两个需要分别检查的问题。
本文实际安装 HISAT2 2.2.3,设计一个只有两个外显子的人工位点,用六条没有测序错误的读段做四组对照。未提供注释与提供已知剪接位点时,总体比对率都是百分之百,但其中两条读段的比对结构发生了明显变化。这个实验适合用于学习结果阅读,不用于估计真实样本中的检出率。

一、先明确 HISAT2 在回答什么问题
HISAT2 将读段定位到参考序列,可以处理跨越剪接位置的比对,并输出后续工具能够读取的 SAM。对于普通短读长转录组,参考通常是基因组,成熟转录本中的相邻碱基在基因组上可能隔着很长的内含子。这与直接将读段匹配到转录本序列的任务不同。作者手册
因此,评价一次比对至少需要同时看定位位置、比对结构和未被解释的碱基。只看定位是否存在,会把完整跨越连接的读段和仅保留一段的读段放在同一个“成功”类别中。若接下来要统计剪接事件,这种差异会直接影响支持连接的证据量。
这个工具的优势是能够将基因组定位与剪接信息放在同一结果中,便于继续检查覆盖和连接。局限是结果依赖参考、候选剪接位置、读段本身的信息量与所用参数。提供一份注释有时能帮助解释短锚定读段,但注释本身仍需要正确匹配当前参考。
二、把实验设计到能够逐条解释
本次人工参考长三千碱基,只有一个名为 chrToy 的序列。第一段外显子位于五百零一至一千,第二段位于两千零一至两千五百,中间为一千碱基内含子。外显子及背景按固定随机种子生成,内含子两端设置为正链常见的 GT 和 AG。
六条输入均为一百五十碱基,质量字符一致。除了普通外显子读段和跨越外显子与内含子边界的连续基因组读段,还有四条跨越外显子连接的读段。四条连接读段在左外显子上分别具有七十五、十二、八、四个碱基,其余部分来自右外显子。
| 读段类型 | 左侧 bp | 右侧组成 | 用途 |
|---|---|---|---|
| 外显子 | 150 | 不跨连接 | 定位对照 |
| 接头 75 | 75 | 外显子 75 bp | 双侧证据 |
| 接头 12 | 12 | 外显子 138 bp | 较短锚定 |
| 接头 8 | 8 | 外显子 142 bp | 更短锚定 |
| 接头 4 | 4 | 外显子 146 bp | 极短锚定 |
| 连续基因组 | 75 | 内含子 75 bp | 连续匹配 |
这些读段不是实际测序样本,没有引入测序错误,也没有模拟复杂重复区域。这样做的目的是减少其他因素,让读者能把变化追溯到剪接先验和软剪切。实验过于简单,不能据此宣称某组参数在真实转录组里具有同样表现。
读者还应注意,短锚定本身不等于低质量。这里所有碱基质量都相同,区别来自能够支撑连接一侧的序列长度。真实数据中,质量差、同源区域、重复结构与短锚定可能同时存在,需要分开判断。
三、已知剪接位点怎样准备,坐标怎样核对
我们先写出两行 GTF 外显子记录,再实际调用安装包中的提取脚本。输出为 chrToy、999、2000、正链标记。这两个数字不是将内含子的首尾位置原样复制过去。最稳妥的方法是让配套脚本从同版本注释提取,再用一个可手工检查的位点验证。
hisat2_extract_splice_sites.py genes.gtf > sites.tsv
hisat2-build -p 2 genome.fna idx
hisat2 -p 2 --no-temp-splicesite \
-x idx -U reads.fq \
--known-splicesite-infile sites.tsv \
-S known.sam
在本例中,GTF 使用的一起始闭区间外显子坐标是 501–1000 与 2001–2500。提取文件记录的是对应边界的零起始坐标,得到 999 与 2000。它们与 SAM 中的一起始定位字段、以及内含子的区间表示各有用途,不应混着加减一。
实际项目里,最常见的准备错误并不一定是命令拼错,而是染色体名称或参考版本不一致。同一个位置编号放到另一套组装上未必表示同一序列,带前缀与不带前缀的名称也可能无法对应。检查时可先比较名称集合,再抽查几个外显子的参考序列和连接位置。
本次所有组都额外关闭了运行过程中临时剪接位点的共享,目的是隔离“给定注释”的作用,减少读段处理顺序对这个小实验的影响。这是实验控制条件,不是建议所有正式项目都照搬该选项。理解一个对照需要知道哪些变量被固定,不能把控制条件自动当作最佳实践。
四、四组实际结果,不能只比较成功比例
四组依次为不提供已知剪接位点、提供已知位点、提供位点并禁止软剪切、关闭剪接比对。前三组全部六条成功定位,最后一组为五条成功定位。若只读总体比例,前面三组看起来完全一样。
| 左右锚定 | 不提供位点 | 已知位点 | 关闭剪接 |
|---|---|---|---|
| 75 / 75 | 75M1000N75M | 75M1000N75M | 未比对 |
| 12 / 138 | 12M1000N138M | 12M1000N138M | 11S139M |
| 8 / 142 | 7S143M | 8M1000N142M | 7S143M |
| 4 / 146 | 3S147M | 4M1000N146M | 3S147M |
不提供位点时,四条真正跨越连接的设计读段中只有两条被表示成剪接比对。提供位点后,四条都出现了与设计结构一致的跳跃。禁止软剪切的已知位点组在本次输入上与普通已知位点组一致,没有增加新的成功记录。
这说明总体比对率没有覆盖我们真正关心的差别。对于连接分析,更直接的核验是逐条检查哪些读段含有跨内含子的结构,跳跃长度是否正确,左右支持分别多长。成功定位只完成了其中一部分检查。
关闭剪接比对后,七十五比七十五的连接读段无法以本次条件完成连续匹配,但三条短锚定读段仍然被保留为软剪切结果。不能因为它们仍在 SAM 中且显示成功,就认为关闭剪接不会影响该区域的分析。
五、把 CIGAR 当作解释结果的主线
在本次结果中,M 描述参加比对的读段碱基,N 描述参考上的跳跃,S 描述保留在读段序列中但未参加当前比对的软剪切部分。M 本身不保证所有碱基都完全一致,还应结合差异标签检查。SAM 格式规范
以 8M1000N142M 为例,左右参加比对的读段长度加起来是一百五十,中间跳过一千个参考碱基。内含子长度消耗的是参考坐标,不额外消耗读段长度。若把这一千也算到读段长度里,就会得到明显错误的覆盖或连接长度。
再看 7S143M。它并不代表程序忘记输入原本有八个碱基来自左外显子。当前连续匹配还可以利用边界附近一个恰好相同的碱基,所以最终软剪切长度与设计中的左侧锚定长度相差一。实际起始位置为两千,包含内含子末端的那个碱基。读者需要同时核对序列和坐标,不能仅凭软剪切长度反推真实剪接结构。
四碱基锚定读段也有同类现象,实际为 3S147M。这个小例子提醒我们,比对算法会寻找符合评分的解释,而不是读取实验者心中预设的来源标签。存在一个可接受的连续解释时,正确的生物学来源不会自动写进结果。
因此,若看到很多末端软剪切,应先判断它们是否集中在连接附近、是否受到注释影响、是否同时出现在重复区或低质量区。不要看到一个软剪切就直接命名为新剪接、融合或结构变异,也不要在没有看序列的情况下全部丢掉。
六、MAPQ 很高,为什么仍然需要看结构
本次成功定位的读段 MAPQ 都为六十,包括那些短锚定读段的软剪切结果。这个现象很有教学价值,因为它直接说明一个较高的定位质量数字并不等价于“整条读段已经按预期的转录结构解释”。
定位质量、比对评分、碱基差异和剪接结构描述的是不同方面。将它们压成单一通过条件会丢失信息。对于一个重点连接,可以同时记录定位是否唯一、左右锚定长度、是否存在软剪切、跳跃是否对应注释,以及支持来自多少独立片段。
这里也不应反过来声称高 MAPQ 没用。它仍然是结果审阅的一部分,只是需要放在所回答的问题中。若目标是检查定位歧义,它与目标相关。若目标是证实某个外显子连接,则需要额外检查连接本身的证据。
实际统计 SAM 时,应按标记识别未比对和次级记录,不能仅用文件行数作为读段数量。本次每个输入只有一个对应记录,复杂样本可能为同一读段提供多个记录。分母一旦从独立读段变成记录行数,比例解释就会改变。
七、基因组连续匹配也不能直接证明污染
本次名为 unspliced_DNA 的对照来自外显子与内含子的连续基因组序列,在四组中都是 150M。这个名字描述我们怎样生成输入,并不是工具根据序列自动给出的样本诊断。软件只完成了连续定位,没有证明真实样本存在某一种污染。
在真实 RNA 数据里,内含子相关信号可能与实验方案、未成熟转录本、内含子保留、基因组 DNA 残留或其他因素有关。应结合文库制备、全局分布、独立验证与注释背景分析,不能把本次人为命名直接推广成判定规则。
同理,SAM 中的正反向标记与转录本链信息也需要分别理解。一个描述读段如何相对参考定位,另一个需要结合剪接和文库约定解释。链特异性设置应来自实验方案并经过数据核验,不能凭某一个连接的方向推断整批样本。
本文没有实测不同链特异性参数,也没有评估反义转录本,因此不把这部分延伸讨论写成已有实验结论。给出结果的适用范围,才能避免一个小型演示在传播中逐渐变成没有证据的普遍规则。
八、从安装到结果,怎样保留可复核记录
实际环境固定为 HISAT2 2.2.3 的容器镜像摘要,脚本保存参考序列校验值、随机种子、GTF、提取后的位点文件、所有读段和四组解析结果。普通比对日志与 SAM 记录一起保留,读者能够从摘要回到具体读段。
本次版本命令输出中还包含构建时的编译器信息,其中有一段链接器错误文字,但建立索引和四组比对实际均以零退出码完成。遇到这种情况,应区分版本元数据与当前命令执行日志,不能仅凭版本文本中的一个词就宣布本次安装失败。
处理自己的样本时,可先选择少量具有代表性的区域做同类对照。固定输入和索引,只改变一个与问题有关的选项,观察具体记录怎样变化。若一开始同时更换参考、注释、软剪切和链特异性设置,即使结果改善,也难以判断是哪一项造成变化。
最后形成报告时,建议把总体比对率与任务相关的证据分开呈现。研究基因表达可以关注分配到注释区域的读段及其规则,研究剪接则需要关注连接支持与边界,研究异常结构还需要更严格的证据核验。指标应服务于问题,而不是只追求一个更高的比例。
下载本组复现材料可以获得固定环境信息、输入生成脚本和四组完整结果。关于所用版本,可查阅HISAT2 发布记录。
当这类参考、注释和参数核验需要扩展到多批次 RNA 数据,并保留可追溯的分析记录时,可以了解云生信生物信息分析环境服务。
