如何用MEGA7做序列比对?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用MEGA7做序列比对?相关的知识,希望对你有一定的参考价值。
参考技术A 先准备好需要比对的序列,可以是DNA序列,也可以是Protein序列;进入MEGA7软件首页,点击Align------Edit/Bulid Alignment-------Creat a new alignment-------OK,之后会弹出来一个对话框:
我这里的是rRNA 的16S序列,因此选DNA;如果你的得是氨基酸序列,那选不就选Protein嘛。然后软件会弹出来一个新窗口用来输入你准备好的序列文件,步骤是:点击Data------Open-------Retrieve Sequences from File,之后软件会弹出本地文件选择框,在界面上找到你的序列文件,点击"打开",你的序列就会显示在屏幕上了,打这里,你已经完成了序列的导入了,是不是很简单呢?你以为完了吗,等等,我们还没有呢做比对呢,咱们继续哈。。。
咱们现在屏幕上的序列还是散乱排列的,建树之间需要把他们对齐了,操作也很简单,点击Alignment---------Align by Muscle,同样会弹出一个对话框,问你是否要用所以的序列进行比对?(下图2),我这里是要用所有的,直接点击OK啦,但如果你的序列多了,也可以回到序列界面选择其中的序列,再来点击比对。 之后会弹出比对参数的对话框(下图3),具体每个条目是什么意思大家自行了解哈,我这里用的是默认值。
比对结果就如下图所示啦:
点击Data------Export Alignment有3种格式可供选择,选择你要的格式就好啦。
这样就完成了序列的比对了,我也是初来乍的新手呀,欢迎大家交流心得~~~3QU!!!...........
---------------------------------------------------------------------------------------------------------I am a line !----------------------------------------------------------------------------------------------
受全局 DNA 序列比对启发的字符串比对
【中文标题】受全局 DNA 序列比对启发的字符串比对【英文标题】:string alignment inspired by global DNA sequence allignment 【发布时间】:2022-01-23 05:50:01 【问题描述】:我想做类似的事情:
library(Biostrings)
s1 <-DNAString("ACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGTTTTCACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGTTTTCAAGAAGACTTCACCAGCTCCCTGGCGGTAAGTTGATCAAAGGAAACGCAAAGTTTTCAAG")
s2 <-DNAString("GTTTCACTACTTCCTTTCGGGTAAGTAAATATATGTTTCACTACTTCCTTTCGGGTAAGTGTTTCACTACTTCCTTTCGGGTAAGTAAATATATAAATATATAAAAATATAATTTTCATCAAATATATAAATATATAAAAATATAATTTTCATCAAATATATAAAAATATAATTTTCATC")
pairwiseAlignment(s1,s2)
但使用这样的字符串:
x123 x4531 等
而不是 DNA 字母字符。有没有人知道在 R 甚至 Python 中实现这一目标的包。谢谢!
【问题讨论】:
你能澄清你的字符串是什么意思吗?您是否正在寻找使用任意字母而不是核苷酸/氨基酸的对齐器/字符串比较方法? 请提供你想要的函数的输出 错配总是会产生同样的影响,还是你想要一个像评分矩阵一样的花朵? 感谢@Chris_Rands。请参阅我对您的回答的评论。 【参考方案1】:Biopython's Align
模块可以接受您选择的字母,例如
>>> from Bio import Align
>>> aligner = Align.PairwiseAligner()
>>> aligner.mode = "global"
>>> aligner.alphabet
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> aligner.alphabet += "1234567890"
>>> alignments = aligner.align("X123Y", "B12XYXYXYX")
>>> print(alignments[0])
X-123-Y-----
--||--|-----
-B12-XYXYXYX
【讨论】:
谢谢。唯一的问题是我需要的不仅仅是字母表中的字符来捕获 100 个字符串。 @cs0815 可以修改aligner.alphabet
包含其他字符吗?
谢谢。我今天将仔细研究一下。我的理解是,字母表只有“1 个字符元素”——不幸的是,我有 100 个唯一字符(又名字符串),例如:abcd123 和 abcd1234,因此每个元素有几个字符。我还能在这个用例中使用 aligner.alphabet 吗?谢谢!以上是关于如何用MEGA7做序列比对?的主要内容,如果未能解决你的问题,请参考以下文章