尝试读取FASTA格式的文件,然后写入Genbank格式的另一个文件

尝试使用 BioPython 中的 Seq SeqIO 对象读取包含基因组序列的文件。无法使用open命令。该程序应接受一个命令行参数,该参数包含包含输入基因组的 FASTA 文件的名称。

它创建了文件,但是文件中没有任何内容。不确定我缺少什么?

这就是我拥有的:

    from Bio.Seq import Seq                                                 
    from Bio import SeqIO
    from Bio.SeqRecord import SeqRecord
    from Bio.Alphabet import IUPAC

    recordlist = []

    for SeqRecord in SeqIO.parse('bacterium_genome.fna','fasta'):
        myseq = SeqRecord.seq
        myseq.alphabet = IUPAC.unambiguous_dna
        recordlist.append(SeqRecord)


    SeqIO.write(recordlist,'bacterium_genome.gb','gb')
flh12004029 回答:尝试读取FASTA格式的文件,然后写入Genbank格式的另一个文件

您正在执行的操作应该可以正常工作(假定有效的非空输入FASTA文件),但是在进行不必要的导入时却不那么理想。您可以直接修改字母,然后将序列记录写到输出文件中以处理每次迭代:

from Bio import SeqIO
from Bio.Alphabet import IUPAC

with open('bacterium_genome.gb','w') as out_f:
    for record in SeqIO.parse('bacterium_genome.fna','fasta'):
        record.seq.alphabet = IUPAC.unambiguous_dna
        SeqIO.write(record,out_f,'genbank')
本文链接:https://www.f2er.com/3034317.html

大家都在问