在 mmCIF 文件中,pdb_strand_id
、asym_id
和 entity_id
是三个关键的标识符,用于描述生物大分子结构中的不同层次和单位。本示例代码将读取一个 .cif.gz
压缩格式的 mmCIF 文件,并提取其中的 entity_poly
和 pdbx_poly_seq_scheme
对象的信息,并构建了链 ID 到非对称单位 ID、实体 ID 到标准氨基酸序列的映射字典。
-
pdb_strand_id
更接近于 PDB 文件格式的传统链标识符,常用于表示 PDB 文件中的链 ID(如链 A、链 B 等)。asym_id
是 mmCIF 文件中的标识符,通常用于表示非对称单元中的具体链,具有更严格的定义,尤其是在涉及对称关系或多个副本时。- 在很多情况下,
pdb_strand_id
和asym_id
是相同的,尤其是在结构简单且没有对称关系的情况下,但对于更加复杂的结构或包含对称操作的结构,它们可能不同。 entity_id
表示的是整个结构中的一个生物分子实体,和链的编号(pdb_strand_id
和asym_id
)不同。entity_id
用来标识分子层面的唯一实体,而不是具体的物理副本。
代码:
from mmcif.io.PdbxReader import Pdb