Bio.SeqIO.PdbIO模块

Bio.SeqIO支持访问DBC和mminf文件中的序列。

Bio.SeqIO.PdbIO.AtomIterator(pdb_id, structure)

从结构对象返回SeqRecords。

用于读取结构Bio. DBC分析器的序列分析器的基本函数。

一旦使用Bio.PDB中的解析器将结构加载到Bio.PDB.Structure. Architecture对象中,序列解析器解释残基序列的方式就没有任何区别。该模块中的函数可以由希望从残基列表中解析序列的SeqIO模块使用。

调用函数必须传递一个Bio.PDB.Structure.Structure对象。

有关详细信息,请参阅Bio.SeqIO. PdbIO.PdbAtomIterator和Bio.SeqIO.PdbIO.CifAtomIterator。

class Bio.SeqIO.PdbIO.PdbSeqresIterator(source: IO[str] | PathLike | str | bytes)

基类:SequenceIterator

DBC文件的解析器。

modes = 't'
__init__(source: IO[str] | PathLike | str | bytes) None

将DBC文件中的链作为SeqRecord对象进行迭代。

论点:
  • 源-以文本模式打开的输入流,或文件的路径

序列是从PDB文件头中的SEQRES行派生的,而不是3D结构的原子。

具体来说,处理这些DBC记录:DBref、DBref 1、DBref 2、MQADV、MQRES、MODRES

请参阅:http://www.wwpdb.org/documentation/format23/sect3.html

这通过Bio.SeqIO在内部调用,以基于SEQRES的TSB文件格式解释:

>>> from Bio import SeqIO
>>> for record in SeqIO.parse("PDB/1A8O.pdb", "pdb-seqres"):
...     print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...     print(record.dbxrefs)
...
Record id 1A8O:A, chain A
['UNP:P12497', 'UNP:POL_HV1N5']

同等地,

>>> with open("PDB/1A8O.pdb") as handle:
...     for record in PdbSeqresIterator(handle):
...         print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...         print(record.dbxrefs)
...
Record id 1A8O:A, chain A
['UNP:P12497', 'UNP:POL_HV1N5']

请注意,该链记录在注释字典中,并且所有PDB DBREF行记录在数据库交叉引用列表中。

__next__()

迭代TSB文件中的记录。

__abstractmethods__ = frozenset({})
__annotations__ = {}
__firstlineno__ = 114
__parameters__ = ()
__static_attributes__ = ('cache',)
class Bio.SeqIO.PdbIO.PdbAtomIterator(source: IO[str] | PathLike | str | bytes)

基类:SequenceIterator

PDB文件中结构的解析器。

modes = 't'
__init__(source: IO[str] | PathLike | str | bytes) None

将DBC文件中的结构作为SeqRecord对象进行迭代。

参数源是类似文件的对象或文件的路径。

这些序列源自3D结构(ATOM记录),而不是DBC文件头中的SEQRES行。

HETATM条目中未识别的三字母氨基酸代码(例如“CPD”)被转换为序列中的“X”。

除了来自TSB标头的信息(所有记录都相同)外,注释中还放置了以下链特定信息:

record.annotations ["residues"] =剩余ID字符串记录列表。注释 ["chain"] =链ID(通常是A、B、.)record.annotations ["model"] =型号ID(通常为零)

如果结构中缺少氨基酸,如残基编号所示,则用“X”字符填充序列以匹配缺失区域的大小,并且“无”作为列表记录中的相应条目。注释 ["residues"] .

该功能使用Bio. DBC模块来完成大部分艰苦工作。注释信息可以改进,但这种额外的解析应该在parse_pdb_header中完成,而不是在此模块中完成。

这通过Bio.SeqIO在内部调用,以进行基于原子的TSB文件格式解释:

>>> from Bio import SeqIO
>>> for record in SeqIO.parse("PDB/1A8O.pdb", "pdb-atom"):
...     print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...
Record id 1A8O:A, chain A

同等地,

>>> with open("PDB/1A8O.pdb") as handle:
...     for record in PdbAtomIterator(handle):
...         print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...
Record id 1A8O:A, chain A
__next__()

返回下一个SeqRecord。

此方法必须由子类实现。

__abstractmethods__ = frozenset({})
__annotations__ = {}
__firstlineno__ = 278
__parameters__ = ()
__static_attributes__ = ('records',)
class Bio.SeqIO.PdbIO.CifSeqresIterator(source: IO[str] | PathLike | str | bytes)

基类:SequenceIterator

mminf文件中链的解析器。

modes = 't'
__init__(source: IO[str] | PathLike | str | bytes) None

将mminf文件中的链作为SeqRecord对象进行迭代。

参数源是类似文件的对象或文件的路径。

这些序列源自mminf文件中的_entity_poly_seq条目,而不是3D结构的原子。

具体来说,这些mminf记录的处理方式是:_pdbx_poly_seq_scheme和_struct_ref_seq。_pdbx_poly_seq记录包含序列信息,_struct_ref_seq记录包含数据库交叉引用。

参见:http://mmcif.wwpdb.org/dictionaries/mmcif_pdbx_v40.dic/Categories/pdbx_poly_seq_scheme.html和http://mmcif.wwpdb.org/dictionaries/mmcif_pdbx_v50.dic/Categories/struct_ref_seq.html

这通过Bio.SeqIO在内部调用,以对mminf文件格式进行基于序列的解释:

>>> from Bio import SeqIO
>>> for record in SeqIO.parse("PDB/1A8O.cif", "cif-seqres"):
...     print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...     print(record.dbxrefs)
...
Record id 1A8O:A, chain A
['UNP:P12497', 'UNP:POL_HV1N5']

同等地,

>>> with open("PDB/1A8O.cif") as handle:
...     for record in CifSeqresIterator(handle):
...         print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...         print(record.dbxrefs)
...
Record id 1A8O:A, chain A
['UNP:P12497', 'UNP:POL_HV1N5']

请注意,该链记录在注释字典中,并且任何mminf_struct_ref_seq条目记录在数据库交叉引用列表中。

__next__()

返回下一个SeqRecord。

此方法必须由子类实现。

__abstractmethods__ = frozenset({})
__annotations__ = {}
__firstlineno__ = 377
__parameters__ = ()
__static_attributes__ = ('records',)
class Bio.SeqIO.PdbIO.CifAtomIterator(source: IO[str] | PathLike | str | bytes)

基类:SequenceIterator

mminf文件中结构的解析器。

modes = 't'
__init__(source: IO[str] | PathLike | str | bytes) None

将mminf文件中的结构迭代为SeqRecord对象。

参数源是类似文件的对象或文件的路径。

这些序列源自3D结构(_atom_site.*字段)在mminf文件中。

HETATM条目中未识别的三字母氨基酸代码(例如“CPD”)被转换为序列中的“X”。

除了来自TSB标头的信息(所有记录都相同)外,注释中还放置了以下链特定信息:

record.annotations ["residues"] =剩余ID字符串记录列表。注释 ["chain"] =链ID(通常是A、B、.)record.annotations ["model"] =型号ID(通常为零)

如果结构中缺少氨基酸,如残基编号所示,则用“X”字符填充序列以匹配缺失区域的大小,并且“无”作为列表记录中的相应条目。注释 ["residues"] .

该功能使用Bio. DBC模块来完成大部分艰苦工作。注释信息可以改进,但这种额外的解析应该在parse_pdb_header中完成,而不是在此模块中完成。

这通过Bio.SeqIO在内部调用,以进行基于原子的TSB文件格式解释:

>>> from Bio import SeqIO
>>> for record in SeqIO.parse("PDB/1A8O.cif", "cif-atom"):
...     print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...
Record id 1A8O:A, chain A

同等地,

>>> with open("PDB/1A8O.cif") as handle:
...     for record in CifAtomIterator(handle):
...         print("Record id %s, chain %s" % (record.id, record.annotations["chain"]))
...
Record id 1A8O:A, chain A
__next__()

返回下一个SeqRecord。

此方法必须由子类实现。

__abstractmethods__ = frozenset({})
__annotations__ = {}
__firstlineno__ = 504
__parameters__ = ()
__static_attributes__ = ('records',)