生物信息学
MSA(多序列对比)工具(MAFFT, MUSCLE, Clustal Omega, T-coffee, ProbCons)的使用
00 分钟
2024-9-21
2024-11-2
type
status
date
slug
summary
tags
category
icon
password
👉
多序列比对(MSA,Multiple Sequence Alignment)是生物信息学中的一项重要技术,用于同时比较多个生物序列(如DNA、RNA或蛋白质),从中找出其相似性和差异性。MSA工具广泛应用于进化关系推断、功能保守性分析、基因家族研究等领域。
下面是一些常见的MSA工具的特点,可以根据其特点和需求来选择合适的MSA工具。
notion image

MAFFT

MAFFT(Multiple Alignment using Fast Fourier Transform)是一种用于多序列比对的工具,广泛应用于生物信息学中来比对DNA、RNA或蛋白质序列。它速度快、精度高,支持多种比对策略。以下是使用MAFFT的步骤和一些常用选项。

安装MAFFT

在类Unix系统下通常可以通过以下方法进行安装。
可以通过包管理工具直接安装,如:

基本用法

MAFFT的最基本用法是将待比对的序列文件作为输入,输出比对结果文件。
这里的 input_sequences.fasta 是包含序列的文件,output_alignment.fasta 是比对后的输出文件。

常用选项

MAFFT提供了多种选项来满足不同的比对需求:

a. 快速比对:

如果你希望快速获得比对结果,可以使用--auto选项,MAFFT会根据输入序列的特点自动选择合适的算法:

b. 线程设置:

MAFFT可以使用多核CPU并行计算,提高计算速度。可以通过--thread选项设置使用的线程数量:

c. 精确比对:

如果想要更精确的比对,可以使用--localpair(使用局部配对)和--maxiterate 1000(最多迭代1000次):

d. 大规模比对:

对于包含大量序列的文件,可以使用--parttree选项,这会降低计算复杂度,适合比对成千上万条序列:

高级用法

MAFFT还支持多种高级用法,适合特殊的比对需求:

a. 添加新的序列到已有的比对:

这种方式可以在已有比对的基础上,添加新的序列。

b. 调整比对策略:

MAFFT支持多种比对策略,包括快速(FFT-NS-1)、中等速度(FFT-NS-2)、更高精度(L-INS-i)、局部比对(E-INS-i)等。你可以根据需求选择特定的策略:

5. 输出格式

MAFFT的输出格式默认为FASTA格式,但也支持Clustal、Phylip等其他格式。你可以使用--clustalout选项将输出文件保存为Clustal格式:

6. 例子

假设我们有一个包含DNA序列的sequences.fasta文件,并且我们想要使用自动选择算法进行比对,使用4个线程来加快速度,可以输入以下命令:
 

MUSCLE

1. 安装

可以通过conda安装:
 

2. 基本用法

MUSCLE的基本命令行使用非常简单,你只需要指定输入文件和输出文件:
  • input_sequences.fasta:输入的FASTA格式文件,包含待比对的序列。
  • output_alignment.fasta:输出的比对结果文件,默认也是FASTA格式。

3. 常用选项

MUSCLE提供了一些常用选项来调整比对的精度、速度和输出格式:

a. 设置比对精度与速度

MUSCLE提供了不同的比对模式,你可以在速度和精度之间进行权衡:
  • 快速模式(牺牲精度,增加速度):
    • maxiters 1 指定最多进行一次迭代,diags 用于启用快速对齐算法。
  • 高精度模式(牺牲速度,增加精度):
    • maxiters 16 指定最多进行16次迭代,diags1 使用初步对齐优化。

b. 指定线程数

默认情况下,MUSCLE使用单线程计算。如果要加快速度并利用多核处理器,可以设置线程数:
  • threads 参数指定使用的线程数。

c. 输出格式

MUSCLE支持多种输出格式,如FASTA、Clustal、Phylip等。你可以通过指定参数来更改输出格式:
  • Clustal格式
    • HTML格式
      • Phylip格式

        d. 通过树进行比对

        MUSCLE还可以生成进化树。你可以使用-tree1-tree2参数生成不同的进化树格式:
        • 使用邻接法生成的初始树(Neighbor-Joining tree):
          • 通过最终比对生成的进化树:

            4. 高级用法

            MUSCLE还支持一些高级选项,以满足特定的比对需求:

            a. 继续从已有比对开始

            如果你已经有一个初步比对结果,可以从已有比对继续优化比对。使用-profile选项进行配置:

            b. 限制最大迭代次数

            默认情况下,MUSCLE会通过多个迭代逐步优化比对,但你可以通过-maxiters参数来限制最大迭代次数。例如,限制为8次迭代:

            c. 限制内存使用

            如果你在处理非常大的序列集,可能需要限制内存使用。可以通过-maxmb选项设置最大内存(MB):
            这里将内存限制为1000 MB。

            5. 比对示例

            假设你有一个sequences.fasta文件,其中包含一些DNA或蛋白质序列,你想要快速比对并生成进化树,可以使用以下命令:
            这样,你会得到一个多序列比对文件aligned_sequences.fasta,以及一个基于比对结果生成的进化树phylogenetic_tree.phy

            6. 查看更多帮助

            如果你想查看MUSCLE的更多选项和用法,可以使用-help选项查看帮助信息:

            Clustal Omega

             

            安装 Clustal Omega

            Linux: Clustal Omega 通常可以通过包管理器安装,如 Ubuntu 上可以运行以下命令:

            2. Clustal Omega的基本使用

            Clustal Omega 的主要功能是将多个序列文件进行比对,生成对齐结果文件。基本的使用命令如下:
            • i: 指定输入文件,通常是 FASTA 格式的序列文件。
            • o: 指定输出文件,通常是对齐结果文件。

            3. 参数选项

            Clustal Omega 提供了一些参数来定制你的比对过程。下面是一些常用的选项:
            • -outfmt=<format>:指定输出文件的格式,支持多种格式(默认为 clu 格式)。
              • -outfmt=clu(Clustal 格式)
              • -outfmt=fasta(FASTA 格式)
              • -outfmt=phylip(PHYLIP 格式)
              • -outfmt=msf(MSF 格式)
            • -force:覆盖已有的输出文件。
            • -guidetree-out=<file>:输出引导树(guide tree)文件,通常用于后续的系统发育分析。
            • -iterations=<num>:设置迭代次数,可以在比对过程中进行多轮优化。默认值是 0(不进行迭代)。
            • -threads=<num>:指定使用的 CPU 核心数,适用于多核处理器来加速比对。
            例如:

            4. 结果解读

            Clustal Omega 的输出结果文件通常包含以下信息:
            • 序列比对结果:各个序列进行多序列比对后,保守区域会在输出中显示为一致的字符。
            • 引导树文件(可选):如果指定了 -guidetree-out 参数,你将获得一个描述序列之间进化关系的引导树文件。

            5. 在线工具使用

            如果不想安装本地版本,Clustal Omega 也提供了在线版本。使用步骤如下:
            1. 访问 Clustal Omega 在线工具:Clustal Omega Online
            1. 粘贴或上传要比对的序列文件(FASTA 格式)。
            1. 选择输出格式,并点击“Submit”提交。
            1. 等待结果生成,随后可以查看或下载比对结果及引导树文件。
             

            T-Coffee

            T-Coffee (Tree-based Consistency Objective Function for alignment Evaluation) 是一种多序列比对(Multiple Sequence Alignment, MSA)工具,能够通过整合不同的比对方法和数据源来生成更可靠的多序列比对结果。下面是 T-Coffee 的基本使用方法介绍。

            1. 安装 T-Coffee

            T-Coffee 可以在不同的操作系统上运行,包括 Linux、MacOS 和 Windows。以下是 Linux 系统下的安装步骤:
            MacOS 用户可以通过 Homebrew 来安装:

            2. 基本使用方法

            基本命令

            T-Coffee 可以通过命令行进行操作,最常见的用法是对多条序列进行比对。假设有一个序列文件 sequences.fasta,它包含需要比对的序列,可以通过以下命令执行多序列比对:
            • seq: 指定输入序列文件(FASTA 格式)。
            • outfile: 指定输出文件名,输出文件通常为 .aln 格式,可以用来可视化比对结果。

            常用选项

            • output: 指定输出的格式,例如 clustalw_alnfasta_aln,默认输出是 Clustal 格式。
              • mode: 可以选择不同的模式进行比对,例如 quickaln 可以加速比对。

                多种比对引擎

                T-Coffee 支持通过不同的比对引擎来提高比对精度,比如 ClustalW、Mafft 等。可以通过以下命令来启用不同的比对引擎:
                • method: 指定比对方法或引擎,如 mafft_msaclustalw_msamuscle_msa 等。

                3. 进阶功能

                拼接多个比对结果

                T-Coffee 的一个强大功能是可以将多个不同的比对结果进行拼接整合。可以提供多个预先生成的比对文件,并整合它们的结果:

                三维结构比对

                T-Coffee 还支持基于三维结构的比对(适用于蛋白质结构)。通过 -mode 选项启用结构比对:
                这种模式会自动从 PDB 数据库中下载相关蛋白质结构,以提高比对精度。

                4. 可视化比对结果

                T-Coffee 输出的比对结果通常以 .aln 文件存储,您可以使用如 JalviewClustalX 等可视化工具来查看比对结果。如下是使用 Jalview 可视化的步骤:
                1. 打开 Jalview。
                1. 导入 T-Coffee 输出的 .aln 文件。
                1. 通过颜色区分保守性位点等信息。

                5. 其他常用功能

                输出一致性得分

                T-Coffee 可以生成每个比对位点的一致性得分,帮助用户评估比对质量:

                使用 T-Coffee web 界面

                如果您不熟悉命令行,T-Coffee 提供了一个 web 版工具,可以在 T-Coffee 官网 上上传序列文件,选择比对参数并运行。
                 

                Probcons

                1. 安装 ProbCons

                在 Linux 或 macOS 系统下,可以通过以下步骤安装:
                • 下载 ProbCons: 可以从 ProbCons 的官方网站或 GitHub 上下载。通常下载后会得到一个压缩文件,解压后包含 ProbCons 的可执行文件。
                • 编译安装: 下载并解压后进入目录,运行以下命令:
                  编译完成后,ProbCons 的可执行文件会在同一目录中生成。

                  2. 基本使用

                  假设已经安装好 ProbCons,基本的用法可以通过命令行运行。基本格式如下:
                  其中:
                  • input.fasta 是包含多条待比对序列的文件(FASTA 格式)。
                  • output.aln 是输出文件,包含对齐结果(默认是 CLUSTAL 格式,可以通过参数更改输出格式)。

                  3. 常用参数

                  ProbCons 提供了多个参数来调节比对行为。以下是一些常用参数及其解释:
                  • c:设定一致性转换的次数,默认为 2 次。值越大,一致性权重的影响越大。语法如下:
                    • pre:生成进程树,并提前终止比对。可以用于只生成一致性转换的序列配对概率。
                      • t:设置比对的重复次数(默认是 100 次)。更多的重复次数可能增加准确性但也会增加运行时间。
                        • clustalw:将输出结果转换为 CLUSTALW 格式(默认)。
                          • v:输出运行过程中的详细信息(verbose 模式)。
                          • annot:生成比对结果的注释信息文件,显示比对中每个位置的置信度。
                            • consistency:直接调整一致性转换步骤的次数,默认是 2 步。如果你需要更精确的比对结果,可以适当增加次数。

                              4. 输出格式

                              默认情况下,ProbCons 会以 CLUSTAL 格式输出多序列比对结果。不过,你也可以通过以下选项生成不同格式:
                              • FASTA 格式:使用 fasta 选项来生成 FASTA 格式的比对输出。
                                • Stockholm 格式:使用 stockholm 选项生成斯德哥尔摩格式的比对输出。

                                  5. 示例

                                  假设你有一个名为 sequences.fasta 的文件,包含了几条蛋白质序列。要对这些序列进行多序列比对并输出结果,可以使用如下命令:
                                  你也可以使用 -c 参数指定一致性转换次数,生成更精确的比对:
                                  如果想要生成注释信息,了解每个位置比对的置信度,可以运行:

                                  6. 性能优化

                                  ProbCons 可以通过调整一致性次数、重复次数等参数来优化比对的准确性和速度。一般来说,增加一致性转换和重复次数可以得到更高质量的比对,但也会增加计算时间。
                                  上一篇
                                  Vim编辑器学习笔记
                                  下一篇
                                  MSA(多序列比对)算法