首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将对齐和ascii树写入文件

将对齐和ascii树写入文件
EN

Stack Overflow用户
提问于 2014-10-13 03:18:18
回答 1查看 685关注 0票数 0

我正在使用Biopython库的AlignIOPhylo函数来比对多个序列并创建系统树。文档在这方面非常清楚,我在获得我的结果时没有任何问题。然而,我不想只在程序运行时显示结果,还想将它们保存到一个文件中(最好是不同的文件)。然而,正如我所怀疑的那样,我得到了TypeError: expected a character buffer object。我找不到任何关于将这些结果写入文件的帮助。

我的代码:

代码语言:javascript
复制
from Bio import AlignIO, Phylo
align = AlignIO.read("allseqs.aln", "clustal")

alignfile = open("alignfile.txt","w")
print(align)
#alignfile.write(align) -->gives error

tree = Phylo.read("allseqs.dnd","newick")
Phylo.draw_ascii(tree)

align结果如下所示:

代码语言:javascript
复制
SingleLetterAlphabet() alignment with 14 rows and 1688 columns
--------------------------------------------...--- M.HpyFIII.dna
--------------------------------------------...--- M.HpyFIV.dna
TTGCATAAAGTTTTTATTATGGAAGCTTTGGAATGTTTGAAAAG...--- M.HpyFII.dna
--------------------------------------------...--- M.HpyFXII.dna
ATGCCTTCAAACGCTCTTTCTATTGAAGAAATCGCTCGCCTAGT...TAA M.HpyFVII.dna
--------------------------------------------...--- M.HpyFV.dna
--------------------------------------------...--- M.HpyFXI.dna
--------------------------------------------...--- M.HpyFORFX.dna
--------------------------------------------...--- M1.HpyFXIII.dna
--------------------------------------------...--- M.HpyFVI.dna
---------------------------------------ATGCA...--- M.HpyFVIII.dna
--------------------------------------------...--- M.HpyFIX.dna
--------------------------------------------...--- M2.HpyFXIII.dna
--------------------------------------------...--- M.HpyFI.dna

系统发育树如下所示:

代码语言:javascript
复制
                                          __________________ M.HpyFI.dna
                                         |
                                         |__________________ M2.HpyFXIII.dna
                                         |
                                         |__________________ M.HpyFII.dna
                                         |
                                         |        __________ M.HpyFIII.dna
                                         |_______|
                                         |       |__________ M.HpyFIV.dna
                                         |
                                         |  ________________ M.HpyFVII.dna
                                         |_|
                                         | |________________ M.HpyFXII.dna
_________________________________________|
                                         |__________________ M.HpyFIX.dna
                                         |
                                         |    ______________ M.HpyFVI.dna
                                         |___|
                                         |   |______________ M.HpyFVIII.dna
                                         |
                                         | __________________ M.HpyFORFX.dna
                                         ,|
                                         ||   _____________ M.HpyFV.dna
                                         ||__|
                                         |   |______________ M.HpyFXI.dna
                                         |
                                         |__________________ M1.HpyFXIII.dna

编辑代码:

代码语言:javascript
复制
from Bio import AlignIO, Phylo,SeqIO
import networkx, pylab

align = AlignIO.read("allseqs.aln", "clustal")
align_write = SeqIO.write(align,"alignment_file.fasta","fasta")

tree = Phylo.read("allseqs.dnd","newick")
with open('phylo_tree.txt', 'wb') as fh:
     Phylo.draw_ascii(tree, file = fh)
EN

回答 1

Stack Overflow用户

发布于 2014-10-13 05:54:25

这一切都在the documentations中,正如@jonrsharpe提到的那样

代码语言:javascript
复制
with open('asciout.txt', 'wb') as fh:
    Phylo.draw_ascii(tree, file = fh)

with open("alignfile.txt","w") as alignfile:
    AlignIO.write(align, alignfile, format)

或者,如果您确实想要按原样表示字符串:

代码语言:javascript
复制
with open("alignfile.txt","w") as alignfile:
    alignfile.write(str(align))

print得到的是str(align)

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

https://stackoverflow.com/questions/26328996

复制
相关文章

相似问题

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