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 工具的成对比对输出的比对迭代器。

这是用于读取 Bill Pearson 的 FASTA 程序输出的成对比对,当使用 -m 10 命令行选项进行机器可读输出时。有关 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 对象中。