MAFFT 进行多序列比对
简介
最经典和广为熟知的多序列比对软件是 clustalw 。 但是现有的多序列比对软件较多,有文献报道:比对速度(Muscle>MAFFT>ClustalW>T-Coffee),比对准确性(MAFFT>Muscle>T-Coffee>ClustalW)。因此,推荐使用 MAFFT 软件进行多序列比对。
安装
1 $ wget http://mafft.cbrc.jp/alignment/software/mafft-7.158-without-extensions-src.tgz
2 $ tar zxf mafft-7.158-without-extensions-src.tgz
3 $ cd mafft-7.158-without-extensions/core
4 $ perl -p -i -e 's#PREFIX =.*#PREFIX = /opt/biosoft/mafft#' Makefile
5 $ perl -p -i -e 's#BINDIR =.*#BINDIR = /opt/biosoft/mafft/bin/#' Makefile
6 $ make
7 $ make install
8 $ echo 'PATH=$PATH:/opt/biosoft/mafft/bin/' >> ~/.bashrc
9 $ source ~/.bashrc
10
11 检测软件是否正确安装
12 $ cd ../test
13 $ rehash # if necessary
14 $ mafft sample > test.fftns2 # FFT-NS-2
15 $ mafft --maxiterate 100 sample > test.fftnsi # FFT-NS-i
16 $ mafft --globalpair sample > test.gins1 # G-INS-1
17 $ mafft --globalpair --maxiterate 100 sample > test.ginsi # G-INS-i
18 $ mafft --localpair sample > test.lins1 # L-INS-1
19 $ mafft --localpair --maxiterate 100 sample > test.linsi # L-INS-i
20 $ diff test.fftns2 sample.fftns2
21 $ diff test.fftnsi sample.fftnsi
22 $ diff test.gins1 sample.gins1
23 $ diff test.ginsi sample.ginsi
24 $ diff test.lins1 sample.lins1
25 若 diff 的结果不换回异常,则正确安装。
使用
输入文件为fasta 的aa/nt
1 较为精确方法
(1)最准确的方法。适合于 <200 条序列,且序列长度 <~2000 aa/nt 的比对
1 mafft --maxiterate 1000 --localpair ex1.txt >ex1.mfa
ex1.txt 输入文件, ex1.mfa 输出文件
(2)适合于序列长度相似的多序列比对。序列条数 <200, 序列长度 <~2000 aa/nt
1 mafft --maxiterate 1000 --globalpair --clustalout ex2.txt >ext2.clw
--clustalout 输出文件格式为clusw,否则为fasta
(3) 适合序列中包含较大的非匹配区域。序列条数 <200, 序列长度 <~2000 aa/nt
1 mafft --maxiterate 1000 --ep 0 --genafpair ex1.txt >ex1.mfa
2 节约速度的方法
(1)减少迭代次数,最大迭代次数减为 2
1 mafft --retree 2 --maxiterate 2 ex1.txt >ex1.mfa
(2)最大迭代次数减为 0
1 mafft --retree 2 --maxiterate 0 ex1.txt >ex1.mfa
(3)此方法非常快速,适合 >2000 条序列的多序列比对。
1 mafft --retree 1 --maxiterate 0 ex1.txt >ex1.mfa
(4)迭代过程中不进行 FFT aproximation
1 mafft --retree 2 --maxiterate 2 --nofft ex1.txt >ex1.mfa
1 mafft --retree 2 --maxiterate 0 --nofft ex1.txt >ex1.mfa
(5)3 个参数都设置为最不消耗时间的类型,适合于 ~10,000 到 ~50,000 条序列的比对
1 mafft --retree 1 --maxiterate 0 --nofft --parttree ex1.txt >ex1.mfa
关注下方公众号可获得更多精彩
参考
陈连福的生信博客
MAFFT 进行多序列比对的更多相关文章
- muscle 软件进行多序列比对
今天在使用muscle 软件进行多序列比对时,发现输出的结果全部为gap, 而且还没有明显的报错信息 找了很久之后,终于发现了问题 muscle 为了追求速度,对输入序列的个数和长度进行了限制 下面是 ...
- MAFFT多重序列比对--(附比对彩标方法)
[转记]MAFFT多重序列比对图解教程 [絮语] 一提到多重序列比对,很多人禁不住就想到ClustalW(Clustalx为ClustalW的GUI版),其实有一款多重序列比对软件-MAFFT,不论从 ...
- 【夯实PHP基础】UML序列图总结
原文地址 序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在协作中各独立对象的类元角色.类元角色用生命线表示.当对象存在时,角色 ...
- Windows10-UWP中设备序列显示不同XAML的三种方式[3]
阅读目录: 概述 DeviceFamily-Type文件夹 DeviceFamily-Type扩展 InitializeComponent重载 结论 概述 Windows10-UWP(Universa ...
- 软件工程里的UML序列图的概念和总结
俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习! 软件工程的一般开发过程:愿景分析.业务建模,需求分析,健壮性设计,关键设计,最终设计,实现…… 时序图也叫序列图(交互图),属于软件 ...
- python序列,字典备忘
初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...
- BZOJ 1251: 序列终结者 [splay]
1251: 序列终结者 Time Limit: 20 Sec Memory Limit: 162 MBSubmit: 3778 Solved: 1583[Submit][Status][Discu ...
- 最长不下降序列nlogn算法
显然n方算法在比赛中是没有什么用的(不会这么容易就过的),所以nlogn的算法尤为重要. 分析: 开2个数组,一个a记原数,f[k]表示长度为f的不下降子序列末尾元素的最小值,tot表示当前已知的最长 ...
- [LeetCode] Sequence Reconstruction 序列重建
Check whether the original sequence org can be uniquely reconstructed from the sequences in seqs. Th ...
随机推荐
- Coursera Deep Learning笔记 深度卷积网络
参考 1. Why look at case studies 介绍几个典型的CNN案例: LeNet-5 AlexNet VGG Residual Network(ResNet): 特点是可以构建很深 ...
- LeetCode:BFS/DFS
BFS/DFS 在树专题和回溯算法中其实已经涉及到了BFS和DFS算法,这里单独提出再进一步学习一下 BFS 广度优先遍历 Breadth-First-Search 这部分的内容也主要是学习了labu ...
- Java:NIO 学习笔记-1
Java:NIO 学习笔记-1 说明:本笔记是根据bilibili上 尚硅谷 的课程 NIO视频 而做的笔记 主要内容 Java NIO 简介 Java NIO 与 IO 的主要区别 缓冲区(Buff ...
- 第七次Scrum Metting
日期:2021年5月5日 会议主要内容概述:前后端对接,以及接下来的测试优化等工作. 一.进度情况 组员 负责 两日内已完成的工作 后两日计划完成的工作 工作中遇到的困难 徐宇龙 后端 测试数据模块和 ...
- Flutter的环境配置以及一些常见问题
flutter & AndroidStudio flutter的下载与配置 flutter是Google推出的基于Dart语言开发的跨平台开源UI框架,能够支持安卓与iOS. flutter框 ...
- 启动Dubbo项目注册Zookeeper时提示zookeeper not connected异常原理解析
文/朱季谦 遇到一个很诡异的问题,我在启动多个配置相同zookeeper的Dubbo项目时,其他项目都是正常启动,唯独有一个项目在启动过程中,Dubbo注册zookeeper协议时,竟然出现了这样的异 ...
- Gitflow branch与Docker image tag命名冲突怎么办?
谷歌还是比必应要好用一点. 在前公司,我根据主流的git flow 给团队搭建了一套devops流程,运行在 docker & k8s上. 在现代devops流程中,一般推荐使用git分支名或 ...
- STM32中按键中断分析
在按键学习中,我们有用到查询的方法来判断按键事件是否发生,这种查询按键事件适用于程序工作量较少的情况下,一旦程序中工作量较大较多,则势必影响程序运行的效率,为了简化程序中控制的功能模块的执行时间,引入 ...
- JAVA笔记__窗体类/Panel类/Toolkit类
/** * 窗体类 */ public class Main { public static void main(String[] args) { MyFrame m1 = new MyFrame() ...
- 学习JS的第四天
一.循环 1.循环嵌套 1.一个循环内包含完整的另一个循环语句. 2.被包含的循环语句叫内循环,包含别的循环的循环语句叫外循环. 3.外循环每执行一次循环,内循环都会完全执行所有循环次数. 4.循环嵌 ...