Bio.PDB.FragmentMapper 模块
使用 Kolodny 等人的片段库对蛋白质主链结构进行分类。
它可以被视为一种客观二级结构分类的形式。仅支持长度为 5 或 7 的片段(即存在一个“中心”残基)。
完整参考文献
Kolodny R, Koehl P, Guibas L, Levitt M. 小型蛋白质片段库可以准确地模拟天然蛋白质结构。J Mol Biol. 2002 323(2):297-307.
片段的定义文件可以从以下地址获取
http://github.com/csblab/fragments/
使用此模块需要这些文件。
以下示例使用包含 10 个长度为 5 的片段的库。库文件可以在目录“fragment_data”中找到。
>>> from Bio.PDB.PDBParser import PDBParser
>>> from Bio.PDB.FragmentMapper import FragmentMapper
>>> parser = PDBParser()
>>> structure = parser.get_structure("1a8o", "PDB/1A8O.pdb")
>>> model = structure[0]
>>> fm = FragmentMapper(model, lsize=10, flength=5, fdir="PDB")
>>> chain = model['A']
>>> res152 = chain[152]
>>> res157 = chain[157]
>>> res152 in fm # is res152 mapped? (fragment of a C-alpha polypeptide)
False
>>> res157 in fm # is res157 mapped? (fragment of a C-alpha polypeptide)
True
- class Bio.PDB.FragmentMapper.Fragment(length, fid)
基类:
object
表示一个多肽 C-alpha 片段。
- __init__(length, fid)
初始化片段对象。
- 参数::
length (int) – 片段长度
fid (int) – 片段的 ID
- get_resname_list()
获取残基列表。
- 返回值::
残基名称
- 返回类型::
[string, string,…]
- get_id()
获取片段的标识符。
- 返回值::
片段的 ID
- 返回类型::
int
- get_coords()
获取片段中的 CA 坐标。
- 返回值::
片段中的 CA 坐标
- 返回类型::
NumPy (Nx3) 数组
- add_residue(resname, ca_coord)
添加残基。
- 参数::
resname (string) – 残基名称(例如 GLY)。
ca_coord (长度为 3 的 NumPy 数组) – 残基的 C-alpha 坐标
- __len__()
返回片段的长度。
- __sub__(other)
返回两个片段之间的 RMSD。
- 返回值::
片段之间的 RMSD
- 返回类型::
float
示例
这是一个不完整但具有说明性的示例
rmsd = fragment1 - fragment2
- __repr__()
将片段对象表示为字符串。
返回 <Fragment length=L id=ID>,其中 L 是片段的长度,ID 是标识符(库中的排名)。
- class Bio.PDB.FragmentMapper.FragmentMapper(model, lsize=20, flength=5, fdir='.')
基类:
object
将模型中的多肽映射到代表性片段列表。
- __init__(model, lsize=20, flength=5, fdir='.')
创建 FragmentMapper 实例。
- 参数::
model (L{Model}) – 要映射的模型
lsize (int) – 库中的片段数
flength (int) – 库中片段的长度
fdir (string) – 找到定义文件的目录(默认值为“.”)
- __contains__(res)
检查给定残基是否在任何映射的片段中。
- __getitem__(res)
获取一个条目。
- 返回值::
片段分类
- 返回类型::
L{Fragment}