因此,我最近启动了一个关于序列比对的项目,并一直使用独立的软件程序'MAFFT‘来比对一些BRCA1序列(通过。命令行)
我需要创建一个函数,它将产生所有的成对组合从aln文件,我已经产生使用MAFFT。然而,有人告诉我,硬编码对齐并不是一种好的做法,例如first_alignment=align[0], second_alignment=align[1]
。
我已经使用以下代码解析了aln文件:
from Bio import AlignIO
align = AlignIO.read(aln_1, "clustal")
print(align)
align = AlignIO.read(aln_2, "clustal")
print(align)
现在我需要一个函数来产生所有可能的成对组合,这样我就可以比较序列并寻找转换/颠换、插入/替换、SNPs或任何生物学意义。
会很感谢你的帮助!
谢谢。
发布于 2020-05-04 21:49:47
您可以遍历每个对齐,如官方biopython站点上所示:
for record in alignment :
print(record.seq + " " + record.id)
要获取这两条记录,您可以添加一个内部循环,如下所示:
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的组合,我认为有你想要的东西。
该页面中的一个示例是:
from Bio import pairwise2
alignments = pairwise2.align.globalxx("ACCGT", "ACG")
您可以调整它并将两个记录(在双循环中)作为参数传递给gloablxx,如下所示:
alignments = pairwise2.align.globalxx(record1, record2)
希望这就是您要找的!:)
https://stackoverflow.com/questions/61601986
复制