首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于从PYTHON中的比对文件类型创建所有序列的成对组合的函数

用于从PYTHON中的比对文件类型创建所有序列的成对组合的函数
EN

Stack Overflow用户
提问于 2020-05-05 05:31:38
回答 1查看 148关注 0票数 0

因此,我最近启动了一个关于序列比对的项目,并一直使用独立的软件程序'MAFFT‘来比对一些BRCA1序列(通过。命令行)

我需要创建一个函数,它将产生所有的成对组合从aln文件,我已经产生使用MAFFT。然而,有人告诉我,硬编码对齐并不是一种好的做法,例如first_alignment=align[0], second_alignment=align[1]

我已经使用以下代码解析了aln文件:

代码语言:javascript
复制
from Bio import AlignIO

align = AlignIO.read(aln_1, "clustal")
print(align)

align = AlignIO.read(aln_2, "clustal")
print(align)

现在我需要一个函数来产生所有可能的成对组合,这样我就可以比较序列并寻找转换/颠换、插入/替换、SNPs或任何生物学意义。

会很感谢你的帮助!

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-05-05 05:49:47

您可以遍历每个对齐,如官方biopython站点上所示:

代码语言:javascript
复制
for record in alignment :
    print(record.seq + " " + record.id)

要获取这两条记录,您可以添加一个内部循环,如下所示:

代码语言:javascript
复制
align1 = AlignIO.read(aln_1, "clustal")
align2 = AlignIO.read(aln_2, "clustal")

for record1 in alignment1 :
    for record2 in alignment2:
        # do comparison here

对于pairwise module的组合,我认为有你想要的东西。

该页面中的一个示例是:

代码语言:javascript
复制
from Bio import pairwise2
alignments = pairwise2.align.globalxx("ACCGT", "ACG")

您可以调整它并将两个记录(在双循环中)作为参数传递给gloablxx,如下所示:

代码语言:javascript
复制
alignments = pairwise2.align.globalxx(record1, record2)

希望这就是您要找的!:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61601986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档