多序列比对

文章转载于 Original 2017-07-11 liuhui  生信百科

多序列比对(或多序列联配,multiple sequence alignment,MSA),是指把多条(3 条或以上)有系统进化关系的蛋白质或核酸序列进行比对,尽可能地把相同的碱基或氨基酸残基排在同一列上。这样做的意义是,对齐的碱基或氨基酸残基在进化上是同源的,即来自共同祖先(common ancestor)。下图是一个 MSA 的例子。

MSA 有许多用途,如构建系统发育树,选择压分析,基因家族的保守结构域分析,motif 分析等。

MSA 分析的软件有很多,如 mafft(http://mafft.cbrc.jp/alignment/software/),muscle(http://www.drive5.com/muscle/downloads.htm),probcons(http://probcons.stanford.edu/),T-coffee(http://tcoffee.crg.cat/),clustalw(http://clustalw.ddbj.nig.ac.jp/)等。

从软件的速度和准确性出发,mafft 和 muscle 是不错的选择。这里介绍 mafft 的使用方法。

mafft 安装(非 root)

  • 下载
  • wget http://mafft.cbrc.jp/alignment/software/mafft-7.310-with-extensions-src.tgz
  • 解压
  • tar -zxvf mafft-7.310-with-extensions-src.tgz
  • 编辑 Makefile 文件的第一行
  • cd mafft-7.310-with-extensions/core/

    vim Makefile (或用 nano 等进行编辑)

    编辑:

    PREFIX = /usr/local

    为:

    PREFIX = /home/your_home/somewhere

    (如:PREFIX = /home/liuhui/bin/mafft-7.310

  • 编译和安
  • make

    make install

  • 安装最后安装在 /home/liuhui/bin/mafft-7.310/bin 下,将这个路径放到 .bashrc 中即可
  • mafft 使用方法

    mafft 的一般用法为:

  • mafft [arguments] input > output
  • input 可以是 fasta 格式的蛋白质或核苷酸序列。

    对于 200 条序列以内且序列长度小于 2,000 bp 或 aa 的文件,可以使用 mafft-linsi

  • mafft-linsi input > output
  • 文件较小时,也可以使用在线版:http://mafft.cbrc.jp/alignment/server/
时间: 2024-10-09 23:50:48

多序列比对的相关文章

如何理解“字符串是一组由16位组成的不可变的有序序列”

疑惑点: 1.16位 2.不可变 3.有序序列 解惑: 1.16位指的是:字符串每个字符所占用的空间为16bits 比特(2 bytes);这是因为JS采用的是unicode编码,每个字符需要2个字符. 2.不可变指的是: 字符串对象一旦创建出来,便不能被更改.这可能有些难理解,但事实确实如此.你可能会认为s+='1' 只是在 s 后面增加一个元素 1 而已,但事实是: 先将 s 拷贝一份,记为 temp 在 temp 末尾加上'1' 将 s 变量指向 temp,并删去原来的s 这一特性,可以从

BZOJ 3992 【SDOI2015】 序列统计

题目链接:序列统计 我来复习板子了--这道题也是我写的第一发求原根啊? 求原根方法: 从小到大依次枚举原根.设当前枚举的原根为\(x\),模数为\(p\),\(p-1\)的质因数分别为\(p_1,p_2,\dots,p_m\),则只需检验\(x^{\frac{p}{p_i}}\equiv1 \pmod{p}\)是否成立即可.如果成立则\(x\)不是原根. 然后这道题朴素\(dp\)就不讲了.设\(m\)的原根为\(g\),那么把每个数表示成\(g^k\)的形式就可以乘法变加法了,就成为了\(NT

k序列和

二分答案是参数搜索的一个改善.是这样,对于一个问题,如果它的答案具有单调性质(即如果i不可行,那么大于i的解都不可行,而小于i的解有可能可行),进而用二分的方法枚举答案,再判断答案是否可行,直到求到符合条件为止.例如:问题的答案范围是1到w之间的一个整数,求最小解,那么我们设s=1,t=w,之后mid=(s+t)整除2.然后判断当解是mid的时候这个问题能不能解决,如果能解决则和最优解比较,并且范围缩小到s到mid-1之间(因为即使这个范围没有解,那么mid是最小解):如果不能解决问题,则最小解

3、创建数据库、表空间、权限管理、表、约束、序列

一.dos常用命令 右键→标记→选中要复制的内容→右击就可以完成赋值 ↑表示找前面代码 data 查看日志time 查看时间cls 清屏exit 退出regedit 注册表taskmgr 任务管理器compmgmt.msc计算机管理mspaint 画图板 开始 运行 命令 集锦 --------------------------------write----------写字板 notepad--------打开记事本shrpubw--------创建共享文件夹 calc-----------启

数据结构(括号序列,线段树):ZJOI 2007 捉迷藏

[题目描述] Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子.某天,Jiajia.Wind和孩子们决定在家里玩捉迷藏游戏.他们的家很大且构造很奇特,由N个屋子和N-1条双向走廊组成,这N-1条走廊的分布使得任意两个屋子都互相可达. 游戏是这样进行的,孩子们负责躲藏,Jiajia负责找,而Wind负责操纵这N个屋子的灯.在起初的时候,所有的灯都没有被打开.每一次,孩子们只会躲 藏在没有开灯的房间中,但是为了增加刺激性,孩子们会要求打开某个房间的电灯或者关闭某个房间的电灯.为了评估某一次

使用RNN解决NLP中序列标注问题的通用优化思路

/* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/ author: 张俊林 序列标注问题应该说是自然语言处理中最常见的问题,而且很可能是最而没有之一.在深度学习没有广泛渗透到各个应用领域之前,传统的最常用的解决序列标注问题的方案是最大熵.CRF等模型,尤其是CRF,基本是最主流的方法.随着深度学习的不断探索和发展,很可能RNN模型会取代CRF的传统霸主地位,会成为解决序列标注问题的标配解决方案. 本文主要抽象出利用RNN解决序列标注问题的通用优化思路.这个RNN优化思路应该

BZOJ 1251 序列终结者(Splay)

题目大意 网上有许多题,就是给定一个序列,要你支持几种操作:A.B.C.D.一看另一道题,又是一个序列要支持几种操作:D.C.B.A.尤其是我们这里的某人,出模拟试题,居然还出了一道这样的,真是没技术含量……这样 我也出一道题,我出这一道的目的是为了让大家以后做这种题目有一个“库”可以依靠,没有什么其他的意思.这道题目 就叫序列终结者吧.[问题描述] 给定一个长度为N的序列,每个序列的元素是一个整数(废话).要支持以下三种操作: 1. 将 [L, R] 这个区间内的所有数加上 V. 2. 将 [

验证给定序列是否是BST的preoder序列

from leetcode https://leetcode.com/problems/verify-preorder-sequence-in-binary-search-tree/ 比如序列 2, 1, 3 是如下图的BST的preorder 序列: 但是2, 3, 1就不会是一个preorder序列: 先复习一下BST,给定一个节点,其左子树的所有节点都小于该节点,右子树的所有节点都大于该节点:preorder序列是指在遍历该BST的时候,先记录根节点,再遍历左子树,然后遍历右子树:所以一个

小明系列问题――小明序列(LIS)

小明系列问题――小明序列 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Practice HDU 4521 Description 大家都知道小明最喜欢研究跟序列有关的问题了,可是也就因为这样,小明几乎已经玩遍各种序列问题了.可怜的小明苦苦地在各大网站上寻找着新的序列问题,可是找来找去都是自己早已研究过的序列.小明想既然找不到,那就自己来发明一个新的序列问题吧!

51nod round3# 序列分解(折半枚举+字典树)

小刀和大刀是双胞胎兄弟.今天他们玩一个有意思的游戏. 大刀给小刀准备了一个长度为n的整数序列.小刀试着把这个序列分解成两个长度为n/2的子序列. 这两个子序列必须满足以下两个条件: 1.他们不能相互重叠. 2.他们要完全一样. 如果小刀可以分解成功,大刀会给小刀一些糖果. 然而这个问题对于小刀来说太难了.他想请你来帮忙. Input 第一行给出一个T,表示T组数据.(1<=T<=5) 接下来每一组数据,输入共2行. 第一行包含一个整数n (2<=n<=40且为偶数). 第二行给出n