病原体基因溯源数据中心,给您提供权威的行业数据
分类
bioinfo
试剂盒
不适用
样本类型
FASTA格式序列文件(核苷酸或氨基酸)
预计时间
~1-30 min(取决于序列数量和长度)
bioinfo

MAFFT多序列比对——病毒基因组系统发育分析的预处理基石

方法定义:MAFFT(Multiple Alignment using Fast Fourier Transform)利用快速傅里叶变换在频域中识别序列同源区域,大幅加速多序列比对计算。内置渐进式比对(FFT-NS-1/2)和迭代优化(L-INS-i/G-INS-i)两种策略,覆盖从几十条到上万条病毒序列的比对需求。参考引导模式(--addfragments)专为近缘病毒基因组设计,是Nextstrain实时监测流程的核心比对引擎。适用于病毒系统发育分析前的序列对齐预处理,是建树、分子钟定年和祖先状态重建的上游关键步骤。

原理

多序列比对(MSA)是病毒系统发育分析的第一步。把一堆长短不一、方向各异的病毒基因组序列,按位点一一对齐——这件事做不好,后面的建树、分子钟定年、祖先状态重建全都会跑偏。MAFFT(Multiple Alignment using Fast Fourier Transform)解决的就是这个问题:在海量病毒序列面前,又快又准地完成比对。

MAFFT的核心巧思是用快速傅里叶变换(FFT)来识别序列间的同源区域。传统的动态规划比对,CPU时间跟序列长度的平方成正比;MAFFT把氨基酸序列转换成体积和极性两个物理量构成的数字信号,用FFT在频域里快速定位相似片段,速度比ClustalW快几十倍,准确度还不掉——在高度相似的病毒基因组之间尤其明显。MAFFT内置了渐进式比对(FFT-NS-1/2)和迭代优化(FFT-NS-i、L-INS-i、G-INS-i)两套策略,前者适合几千条序列的快速处理,后者适合几百条序列的高精度对齐。与MUSCLE相比,MAFFT在大数据量场景下速度优势更突出;与Clustal Omega相比,MAFFT对近缘序列的比对精度更稳定。SARS-CoV-2大流行期间,Nextstrain团队用MAFFT的参考引导模式(--addfragments)每天处理数万条新提交的基因组序列,把比对时间从96核10分钟压缩到8核13分钟——这个效率让实时基因组监测成为可能。在SARS-CoV-2全球基因组监测中的应用,MAFFT是Nextstrain/Augur流水线的默认比对引擎。

步骤

1. 准备输入序列

把所有待比对的病毒序列整理成一个FASTA文件。每一条序列占两行(或一行header加一行序列),header以>开头。确保序列方向一致——MAFFT的--adjustdirection选项可以自动检测并翻转反向互补序列,但事先用SeqKit或自定义脚本统一方向更稳妥。去掉含大量N或低复杂度区域的序列,否则会影响比对质量。

2. 选择比对策略

MAFFT提供多种策略,选择依据是序列数量和相似度。不确定时直接用--auto,程序会根据数据规模自动选:少于200条且短于2000 bp走L-INS-i(最准);中等规模走FFT-NS-2(快且准);大规模走FFT-NS-1(极速)或PartTree。病毒基因组通常高度相似(>99%一致性),如果是给参考序列追加新序列的场景,推荐参考引导模式。

3. 执行比对

命令行一行搞定。标准用法:

# 自动选择策略(推荐新手)
mafft --auto input.fasta > aligned.fasta

# 高精度迭代(≤200条序列)
mafft --maxiterate 1000 --localpair input.fasta > aligned.fasta

# 多线程加速
mafft --auto --thread 8 input.fasta > aligned.fasta

# 参考引导模式(大批量近缘病毒序列,如SARS-CoV-2)
mafft --6merpair --keeplength --thread -1 \
  --addfragments reference.fasta new_sequences.fasta > aligned.fasta

输出为标准多序列比对FASTA格式,所有序列被填充gap使长度一致。注意检查输出中是否有整行gap的序列——那意味着它跟参考序列几乎没有重叠区域。

4. 比对后处理与质控

比对结果不是终点。用trimal或ClipKIT去除比对质量差的列(gap比例过高的位点),用可视化工具检查:AliView或Jalview打开比对文件,肉眼扫一遍保守区域是否对齐、可变区域gap分布是否合理。如果发现明显的错配区域,调高精度策略(如改用L-INS-i)重跑。

参数选择建议

参数推荐值说明
--auto默认开启自动根据数据规模选策略,日常分析首选
--maxiterate1000迭代优化最大轮数;越高越准但越慢,1000是精度收敛的通用值
--thread-1或8-16-1使用全部可用线程;大规模数据建议显式指定
--localpair搭配L-INS-i局部比对策略,适合存在大段插入/缺失的序列
--6merpair搭配--addfragments用6-mer计数加速距离矩阵计算,适合近缘病毒基因组
--keeplength参考引导模式必加保持参考序列长度不变,不对参考插入gap
--addfragments大批量追加序列时使用将新序列对齐到已有参考比对,而非从头比对全部序列
--adjustdirection不确定方向时开启自动检测并翻转反向互补序列,避免方向错误导致假变异

FAQ

MAFFT、MUSCLE和Clustal Omega怎么选?

病毒基因组日常比对用MAFFT。数据量小时(<50条)三者差别不大。序列超过500条时,MAFFT的FFT-NS-2比MUSCLE快3到5倍,比Clustal Omega在近缘序列上精度更稳定。如果做跨科属的远缘病毒比对,Clustal Omega的HMM引导策略有时更好。日常病毒溯源场景——MAFFT是首选。

为什么病毒比对推荐--auto而不是手动指定L-INS-i?

L-INS-i是最准的选项,但只适合≤200条序列、长度≤2000 bp的场景。病毒基因组动辄30 kb,加上动辄上千条序列——L-INS-i会慢到不可接受。--auto能自动判断:小数据走精度路线,大数据走速度路线。实在不放心,跑完--auto后用AliView目检关键区域,有问题再局部调整。

参考引导模式(--addfragments)和全量重比对怎么取舍?

每天都有新序列提交的监测场景(如流感、新冠常规测序),用参考引导模式——只把新序列对齐到已有参考比对,时间复杂度O(NL log L),不改动历史比对结果。一次性做几十到几百条序列的溯源分析,老老实实全量重比对。参考引导的代价是新序列之间的相对位置信息不如全量比对精确,如果后续要做重组分析,全量比对更可靠。

参考文献

  1. Katoh K, Misawa K, Kuma K, Miyata T. MAFFT: a novel method for rapid multiple sequence alignment based on fast Fourier transform. Nucleic Acids Res. 2002;30(14):3059-3066. DOI: 10.1093/nar/gkf436
  2. Katoh K, Standley DM. MAFFT multiple sequence alignment software version 7: improvements in performance and usability. Mol Biol Evol. 2013;30(4):772-780. DOI: 10.1093/molbev/mst010
  3. Katoh K, Rozewicki J, Yamada KD. MAFFT online service: multiple sequence alignment, interactive sequence choice and visualization. Brief Bioinform. 2019;20(4):1160-1166. DOI: 10.1093/bib/bbx108
  4. Katoh K, Frith MC. Adding unaligned sequences into an existing alignment using MAFFT and LAST. Bioinformatics. 2012;28(23):3144-3146. DOI: 10.1093/bioinformatics/bts578