biopython吧 关注:59贴子:174
  • 3回复贴,共1

利用Biopython获取指定序列

只看楼主收藏回复

特别是当 Bio.SeqIO.write() 还不支持这种输出格式(e.g. SwissProt文件格式的文本文件 ) 或者需要完整地保留源文件(Biopython的GenBank和EMBL格式输出并不会保留每一点注释信息)。
利用 get_raw()函数:


IP属地:广东1楼2017-01-16 18:02回复
    从UniProt FTP站点下载了整个数据库的SwissPort格式文本文件:
    ftp.uniprot.org/pub/databases/uniprot/current_release/knowledgebase/complete/uniprot_sprot.dat.gz


    IP属地:广东2楼2017-01-16 18:03
    回复
      解压为文件 uniprot_sprot.dat


      IP属地:广东3楼2017-01-16 18:03
      回复
        >>> from Bio import SeqIO
        >>> uniprot = SeqIO.index("uniprot_sprot.dat", "swiss")
        >>> handle = open("selected.dat", "w")
        >>> for acc in ["P33487", "P19801", "P13689", "Q8JZQ5", "Q9TRC7"]:
        ... handle.write(uniprot.get_raw(acc))
        >>> handle.close()


        IP属地:广东4楼2017-01-16 18:04
        回复