云生信学生物信息学

宏基因组里找到一个功能基因,怎么判断它可能属于哪种菌?读懂 nf-core/mag

作者:发布于 2026-11-14约 7 分钟阅读
示意片段甲和乙在上游覆盖高、下游覆盖低,丙趋势相反;共变为分箱提供线索。

假设你在河道沉积物的 shotgun 宏基因组数据里找到了一个与氮循环有关的基因。接着看物种组成表,样本里又有好几类细菌。能把这个基因直接归给丰度最高的那一种吗?物种表和基因表各自描述了混合样本的一个侧面;要把两者连起来,需要知道这段基因和哪些 DNA 片段可能来自同一个基因组。

nf-core/mag 提供了一条追查路径:先把短读段拼成长片段,再把可能来自同一基因组的片段归到一起。 得到的候选基因组叫 MAG,即宏基因组组装基因组。研究者可以从某个基因所在的片段往回查,看它归入了哪个候选基因组、这个归属有多少证据。下文以 5.5.0 版、细菌和古菌的双端短读段数据为例。nf-core/mag 仓库与版本

示意片段甲和乙在上游覆盖高、下游覆盖低,丙趋势相反;共变为分箱提供线索。

第一步,为什么要先拼出更长的片段?

单条短读段能覆盖的序列有限。组装软件利用读段间共享的序列信息,把能衔接的部分拼成较长的连续片段,称为 contig。目标基因若落在一条较长的 contig 上,同一片段上的邻近基因、序列组成和覆盖情况就能一起检查。nf-core/mag 在短读段分析中提供 MEGAHIT、SPAdes 等组装选项,质控与宿主去除则按数据和参数设置。官方流程与组装输出

为什么拼完还会剩下许多 contig?两种近缘菌可能共享相同的序列,重复区域也会让拼接出现多个可能出口。低丰度微生物甚至没有足够读段把相邻区域接起来。到这里,研究者拥有的是一批较长片段;哪个片段属于哪种微生物,仍然是下一个问题。

第二步,分箱凭什么把两条 contig 放到一起?

以流程支持的 MetaBAT2 为例,它会利用序列组成和覆盖深度。来自同一基因组的片段往往有相近的短序列使用特征。再把多个样本的 reads 分别比对回组装,如果两个片段在不同样本中总是一起变多、一起变少,这种覆盖模式又提供一条线索。分箱器结合这些信息,把可能同源的片段归入一个 bin。MetaBAT2 方法论文

可以用一个定性例子理解:片段甲和乙在上游样本里覆盖都高,在下游都低;片段丙的方向相反。覆盖变化支持优先考察甲和乙能否归在一起。可如果两种微生物总在同一环境共同增殖,它们也可能呈相似走势。因此还要看序列组成、分箱质量,以及目标基因所在片段本身的证据。允许某些片段暂时没有归属,是一个有用的结果。

样本表里写了同一个组,就会联合组装吗?

下面是一张示意样本表。两个文件对来自同一站点的两个采样时间,group 都写成 0;正式运行时替换为实际路径。

sample,group,short_reads_1,short_reads_2,long_reads,short_reads_platform
river_T1,0,T1_R1.fastq.gz,T1_R2.fastq.gz,,ILLUMINA
river_T2,0,T2_R1.fastq.gz,T2_R2.fastq.gz,,ILLUMINA

写入同一个 group 不会自动开启联合组装。 在这个版本中,--coassemble_group 控制是否把同组读段一起组装;--binning_map_mode 则关系到哪些样本的读段会被比对回组装以计算分箱所用的覆盖信息。这是两个不同决定:可以保留逐样本组装,同时利用组内多个样本的覆盖差异辅助分箱。官方分组说明与输入示例 · 仓库中的联合组装说明

怎么选?如果关心同一站点不同时间的群落,而且目标微生物在各样本覆盖都偏低,可考虑在生物学上相关的样本内测试联合组装。如果关心某个时间点独有的近缘菌株,逐样本组装更便于保留样本来源,也能减少不同菌株序列混合带来的解释困难。拿同一组数据比较两种方案时,应看目标基因及其上下游是否更完整、候选 bin 的质量如何。仅凭“哪一边分出了更多个 bin”很难决定哪种方案适合研究问题。

第三步,拿到 bin 以后怎样追查那个功能基因?

你想核实什么 去哪里找 怎样判断
目标基因落在哪条片段? 功能注释或同源检索结果、对应组装 FASTA 留下组装 ID、contig ID、基因坐标和匹配依据。不同组装中的同名 contig 要分开。
这条片段被分给了谁? GenomeBinning/contig_to_bin/contig_to_bin_map.tsv 用组装和 contig 一起定位,查看分箱器、bin ID;启用精炼时,确认读到的是哪一版 bin。
这个候选基因组可靠吗? GenomeBinning/bin_summary.tsv 查看已启用模块给出的完整度、污染度估计及分类。汇总表中的可用列取决于本次运行设置。
能把结论写到哪一步? 目标片段的覆盖、注释和 bin 的分类依据 多条证据一致时,可写“该基因位于归入某分类群候选 MAG 的片段上”。若片段未分箱,当前证据只支持它存在于这个样本的组装中。

完整度估计回答“预期的基因组内容找回了多少”,污染度估计提示“这个 bin 混入外源片段的可能程度”。即使整箱指标不错,也值得单独检查承载关键基因的那一条片段,特别是它可能位于质粒等移动遗传元件上时。再往前一步,DNA 提示的是遗传潜力。要判断这条代谢通路当时是否活跃,还需要表达、蛋白或实验层面的证据。官方分箱、质量评估与分类输出

哪些项目值得为它准备服务器?

先问项目是否真的需要 MAG。如果目标只是比较各组物种组成,可先走读段分类与丰度估计路线;如果要把功能基因、邻近序列和候选宿主联系起来,组装与分箱的额外计算才有明确收益。已安装兼容的 Nextflow 和 Docker 时,可用 nextflow run nf-core/mag -r 5.5.0 -profile test,docker --outdir mag_test 检查环境,再选一组有代表性的完整文库试跑。nf-core/mag 运行说明

对准备扩大到多样本的项目,试跑时分开记两件事:组装阶段最高用掉多少内存,覆盖计算阶段工作盘最少还剩多少空间。前者影响一个组能否拼完,后者影响多批比对文件能否同时保留。若还启用了 GTDB-Tk 分类,把数据库位置、版本和占盘单列。小测试走通只能验证环境;正式项目需要多少内存、磁盘和时间,要用实际文库判断。

本地机器容得下代表组、也赶得上项目进度,就可以继续跑。需要租服务器时,把“我要做宏基因组”换成更具体的描述:多少个样本、最大联合组有多少数据、打算用哪些模块、试跑卡在哪一步。用这些信息对照云生信的 CPU、内存、工作盘和租期,才容易判断该扩哪一项。云生信科研服务器租赁配置与租期

把知识用于当前任务

下一步可以直接开始分析

按研究目标查找在线工具、课程、计算资源或完整分析服务。

按目标找方案仍有疑问,联系客服 ↗