4. 蛋白质结构基础:一级、二级、三级、四级

蛋白质这东西,说白了就是一根“氨基酸项链”。你想想看,20种氨基酸串起来,每条项链的串法不同,功能就千差万别。我个人理解结构生物学时,最常提醒自己的就是——结构决定功能。不信?你换个氨基酸,整个蛋白可能就废了。

在日常做PDB结构验证时,我习惯先从一级结构开始核对,再一层层往上推。今天我们就顺着这个思路,把四个层级彻底捋一遍。

蛋白质结构四层级框架图 一级结构 氨基酸序列 二级结构 α螺旋、β折叠、无规卷曲 三级结构 单个多肽链的3D折叠 四级结构 多亚基组装,如血红蛋白(α₂β₂) 💡 说明: 四个结构层次是递进关系。PDB文件中同时包含所有层级信息: ATOM记录 → 一级序列;HELIX/SHEET → 二级注释; 坐标残基连接 → 三级折叠;REMARK 300/350 → 四级组装。

4.1 一级结构 —— 氨基酸序列

一级结构,就是蛋白质的“源代码”。20种氨基酸按特定顺序通过肽键连成一条链。我在项目中遇到过很多次:PDB文件中标明的序列和实际测序结果对不上,结果发现是早期X射线解析时人工搭模搭错了。所以,每次拿PDB做分析前,我建议先用sequence(PDB中的SEQRES记录)和ATOM序列做一次比对。

关键概念:

  • 肽键:—CO—NH—,平面刚性。
  • 侧链(R基):决定氨基酸化学性质。
  • N端→C端:序列方向,PDB中从第1个残基开始。

举个例子,从PDB文件里提取序列,我习惯用Biopython快速搞定:

from Bio.PDB import PDBParser
parser = PDBParser()
structure = parser.get_structure("1ake", "./1ake.pdb")
for model in structure:
    for chain in model:
        seq = "".join(res.resname for res in chain if res.id[0] == " ")
        print(f"Chain {chain.id}: {seq[:50]}...")

4.2 二级结构 —— 局部折叠模式

一级结构串好了,它并不会像一根软面条一样随意飘着。氢键会让部分片段形成规律性的局部构象——这就是二级结构。最常见的就是α螺旋和β折叠片。

为什么要关心二级结构?记得有一次我做一个结构比对,两个蛋白序列相似度不到20%,但二级结构布局几乎一模一样——它们大概率是同源的。说白了,二级结构比序列更保守,是进化上的“指纹”。

判断二级结构的常用方法:

  • DSSP(Dictionary of Secondary Structure of Proteins):最经典的算法,基于氢键模式。
  • STRIDE:替代方案,速度更快。
  • PDB文件中的HELIX和SHEET记录是经实验或模型确认的二级结构注释。

如何从PDB的HELIX记录里读取二级结构信息?

# 直接用BioPython解析HELIX记录
from Bio.PDB import PDBParser
p = PDBParser()
s = p.get_structure("test", "1ake.pdb")
for model in s:
    for chain in model:
        for helix in chain.child_dict.get("HELIX", []):
            print(f"Helix: {helix.get_id()}, start={helix.seq_begin}, end={helix.seq_end}")

嗯,这里要注意:DSSP对转角、coil的定义范围比较严谨,但PDB的原始HELIX/SHEET注释可能不全,尤其是粗分辨率模型。我个人习惯在预处理时用外部DSSP跑一遍二级结构赋值,再和PDB原始注释对比,能发现不少数据质量问题。

4.3 三级结构 —— 空间折叠与结构域

二级结构元件再进一步折叠、扭曲、堆积,形成一个完整的球状或纤维状构象,这就是三级结构。三级结构由各种非共价作用力(疏水作用、氢键、范德华力、盐桥)和二硫键稳定。

我曾经在验证一个膜蛋白PDB时发现,它的残基alpha碳距离图上出现了一堆小于1 Å的不合理接近——这说明坐标建模时原子之间的空间冲突没处理好。三级结构的质量核心指标就是空间合理性,比如Ramachandran图、侧链旋转同分异构体、原子间距等。

检查指标 工具/方法 理想阈值
Ramachandran favored PROCHECK / MolProbity > 98%
Clashscore MolProbity < 10
Rotamer outliers MolProbity < 1%
原子间距 < 2.0 Å PDB文件检查 不允许(除共价键)

⚠️ 三级结构验证的常见坑: 千万不要只看R_factor(R因子/Rfree)。Rfree < 0.25 不保证结构正确,还必须查看电子密度图和立体化学统计。我亲眼见过Rfree 0.22但Ramachandran讨厌(outlier)占比超过5%的“伪优”结构。

4.4 四级结构 —— 多亚基组装

很多蛋白质由两条或更多多肽链(亚基)非共价组装而成,这就是四级结构。最经典的例子就是血红蛋白——两个α亚基加两个β亚基形成α2β2四聚体。

判断四级结构的方法,我一般分三步走:

  1. 看PDB文件中的REMARK 300(生物组装)或REMARK 350(对称性)。
  2. 计算界面面积和氢键/盐桥数量。如果亚基间界面面积大于400 Ų,很可能不是晶体堆积假象。
  3. 使用PISA或PDBePISA分析。它会给出生物组装的可信度评分。

举个例子,从PDB里提取对称性信息:

# 1ake.pdb 中查找对称性(示例片段)
REMARK 350   BIOMOLECULE: 1
REMARK 350   AUTHOR DETERMINED BIOLOGICAL UNIT: MONOMER
# 注意:有些PDB会直接标明生物组装矩阵
# 用 Biopython 解析
from Bio.PDB import PDBParser
s = PDBParser().get_structure("x", "1ake.pdb")
for key in s.header.keys():
    if "REMARK" in key:
        if "350" in key:
            print(s.header[key])

四级结构的验证还有个容易翻车的地方——晶体堆积 vs 生物组装。你以为看到的是一个四聚体,实际上只是晶胞中的两个独立单体被晶格对称操作堆在一起。我曾经就被一个“假二聚体”带偏过,后来用PISA重新跑了界面分析才发现界面残基的疏水互补程度很低。嗯,所以我现在养成了习惯:凡是PDB中多个链,一定先查REMARK 350,再跑PISA。

4.5 四个层级在PDB中的表达总结

结构层次 PDB主要记录 验证要点
一级 SEQRES, ATOM (残基名) 序列一致性、缺失残基
二级 HELIX, SHEET 与DSSP一致性、注释有无遗漏
三级 ATOM坐标、LINK, SSBOND Ramachandran、clashscore、几何指标
四级 REMARK 300/350, CRYST1 生物组装对称性、界面面积、PISA评分

总的来说,这四个层级是递进关系,但每一层在PDB验证流程中都有独特的“雷区”。从序列到组装,我建议你每次拿到一个新PDB文件,都按这个顺序过一遍清单——先确认一级序列没问题,再检查二级注释是否合理,接着看三级坐标质量,最后判断四级是否组装对了。坚持这么做,你的结构分析会少走很多弯路。

实用工具小清单:

  • 序列比对:BLASTp, Clustal Omega
  • 二级结构:DSSP, STRIDE
  • 三级几何:MolProbity, PROCHECK, WHAT_CHECK
  • 四级组装:PDBePISA, PQS