Bio.AlignIO.FastaIO模块

Bio.AlignIO支持来自Bill Pearson的FASTA工具的“FASTA-m10”输出。

您需要通过Bio.AlignIO函数使用此模块(如果您想要直接处理有间隙的序列,则通过Bio.SeqIO函数)。

此模块包含一个解析器,用于Bill Pearson的FASTA工具生成的成对比对,供Bio.AlignIO接口使用,其中称为“FASTA-m10”文件格式(因为我们只支持使用-m 10命令行选项选择的机器可读输出格式)。

本模块不包括最初作为FASTA工具输入格式开发的通用“FASTA”文件格式。Bio.AlignIO和Bio.SeqIO都使用Bio.SeqIO.FastaIO模块来处理这些文件,该模块也可用于存储多个序列比对。

Bio.AlignIO.FastaIO.FastaM10Iterator(handle, seq_count=None)

FASTA工具的成对对齐输出的对齐迭代器。

当使用机器可读输出的-m10命令行选项调用时,它用于读取Bill Pearson的Fasta程序输出的成对比对。有关FASTA工具的更多详细信息,请访问网站http://fasta.bioch.virginia.edu/和白皮书:

W.R.Pearson&D.J.Lipman PNAS(1988)85:2444-2448

此类旨在通过Bio.AlignIO.parse()函数使用,方法是将格式指定为“Fasta-m10”,如以下代码所示:

from Bio import AlignIO
handle = ...
for a in AlignIO.parse(handle, "fasta-m10"):
    assert len(a) == 2, "Should be pairwise!"
    print("Alignment length %i" % a.get_alignment_length())
    for record in a:
        print("%s %s %s" % (record.seq, record.name, record.id))

请注意,这并不是FASTA输出中所有信息的完全解析器-例如,大部分页眉和所有页脚都被忽略。此外,不会根据输入查询对比对进行批处理。

还要注意,原始FASTA输出中可以包含多达30个左右的侧翼区域字母作为上下文信息。这不是对齐本身的一部分,也不包括在返回的结果MultipleSeqAlignment对象中。