4. 结构清洗与标准化
从 PDB 下载得到的结构文件,本质上是一份“实验记录”,而不是一份可直接用于对接或建模的“计算输入”。它记录了结晶实验里出现过的所有东西:水、缓冲液成分、冷冻保护剂、金属离子、辅因子、共结晶配体、多条链、甚至同一蛋白的多个构象副本。结构清洗与标准化的任务,就是把这些“实验痕迹”按可成药位点分析的需要逐类甄别、取舍,并把保留下来的部分整理成编号一致、质子化状态明确、化学修饰可解释的规范对象。这一步做得好不好,直接决定后续口袋检测、对接打分和相互作用分析是否可信。
一、先分类,再决定去留
清洗不是“一律删掉非蛋白原子”,而是按对象类别做差异化决策。工程上通常把结构中的非目标内容分为五类,每类的处理原则不同:
- 水分子(HOH/WAT):多数对接流程会删除,但桥接水、与关键残基形成稳定氢键网络的水可能参与口袋塑形,应单独标记后再决定。
- 添加剂与冷冻保护剂:如甘油(GOL)、硫酸根(SO4)、乙二醇(EDO)、聚乙二醇(PEG)、二甲亚砜(DMSO),几乎都是结晶副产物,默认删除。
- 金属离子:如 Zn²⁺、Mg²⁺、Ca²⁺、Mn²⁺、Fe,既可能是结构必需的催化/稳定离子,也可能是缓冲液带入的杂质,需结合配位残基和文献判断。
- 冗余链与冗余副本:同一蛋白的多条相同链、NMR 多模型、交替构象(altLoc),需保留代表性的一份。
- 配体与辅因子:共结晶配体、底物类似物、辅酶(NAD、FAD、ATP)等,是判断可成药位点位置与形状的最重要信息,通常保留并单独提取。
二、冗余链与交替构象的取舍
以常见的二聚体酶结构为例,文件中可能同时存在 A、B 两条链,二者序列相同、构象略有差异。若目标是分析单体上的可成药位点,应只保留一条链,选择标准通常是:分辨率更高、缺失残基更少、配体占据更完整、B-factor 更合理。若目标是研究二聚界面,则两条链都必须保留,并检查界面处是否有对称相关分子需要补全。
交替构象(altLoc)的处理原则是:对每个残基只保留占据率(occupancy)最高的构象,删除其余 altLoc;若两个构象占据率接近且都参与口袋,应保留并记录,避免人为抹平口袋的柔性。NMR 结构的多模型(MODEL)则通常取第 1 个模型或做系综平均,具体取决于后续是否要做柔性对接。
三、残基编号、质子化状态与化学修饰
编号统一是清洗中最容易被忽视、却最容易导致下游错误的一步。不同 PDB 条目对同一蛋白可能采用不同的起始编号,甚至存在插入编号(如 100A、100B)或负编号。标准化时应把编号重设为从 1 开始的连续整数,并保留一份“原始编号 ↔ 新编号”的映射表,便于回溯文献位点。
质子化状态决定氢键供受体和电荷,必须在清洗阶段明确。常用做法是:在 pH 7.4 条件下,Asp/Glu 去质子化带负电,Lys/Arg 质子化带正电,His 默认中性但需根据其周围氢键环境判断是否质子化在 Nδ1 或 Nε2。半胱氨酸尤其关键:游离 Cys 为中性硫醇,形成二硫键的 Cys 不参与氢键,而金属配位 Cys 常以硫醇盐形式存在。
化学修饰包括磷酸化(SEP/TPO/PTR)、糖基化(NAG、MAN)、甲基化、乙酰化等。处理原则是:若修饰直接位于目标口袋内或影响口袋构象,应保留并作为独立残基处理;若位于远端且不影响位点,可简化为对应标准残基或直接删除,但必须在日志中记录。
四、可执行的处理流程与判断依据
把上述原则落成可复现的操作,通常借助 PyMOL、UCSF Chimera、或 Python 的 Biopython/PDBFixer 等工具。一个典型的处理顺序是:先删水与添加剂,再处理冗余链与 altLoc,然后判断金属与配体去留,最后统一编号与质子化。下面给出一段可直接参考的 PyMOL 命令示例,用于删除水、硫酸根和甘油,并只保留 A 链:
# 载入结构
load 1abc.pdb, raw
# 删除水、硫酸根、甘油、乙二醇
remove resn HOH
remove resn SO4
remove resn GOL
remove resn EDO
# 只保留 A 链(若研究二聚界面则改为保留 A+B)
remove chain B
remove chain C
# 删除占据率低于 0.5 的交替构象
remove altLoc B
remove altLoc C
# 保存清洗后结构
save cleaned.pdb, raw
执行后应检查三件事:一是目标链的残基是否连续、有无意外断裂;二是关键配体与金属是否仍在;三是编号是否已重排。若使用 PDBFixer,可在清洗后直接调用其加氢与质子化模块,按 pH 7.4 自动赋值,再人工复核 His、Cys 两类敏感残基。
五、常见陷阱与复核清单
实践中几个高频错误值得单独提醒。第一,把金属离子当杂质删掉,结果口袋形状和静电分布完全改变;第二,忽略 altLoc,导致同一残基出现两个侧链,口袋体积被高估;第三,编号未统一就与文献位点比对,造成位点错位;第四,His 质子化状态随意指定,影响氢键网络判断;第五,磷酸化残基被当作普通 Ser/Thr 处理,丢失关键电荷与氢键。
清洗完成后,建议用一份简短清单做最终复核:目标链是否唯一且完整;水与添加剂是否已按规则处理;金属与配体是否保留并记录理由;残基编号是否连续且映射表已保存;His/Cys 质子化状态是否明确;化学修饰是否保留或已记录简化方式。这份清单不需要复杂,但每一项都对应一个可能影响下游结果的决策点。只有把清洗阶段的选择显式记录下来,后续的口袋分析与对接结果才具备可解释性和可复现性。