237

RCSB PDB:结构检索、下载与质量判断

RCSB 是 PDB 的主要门户,提供强大的检索、下载与质量指标。这篇给出高级检索、批量下载脚本,以及判断一个结构能不能用的具体标准。

RCSB PDB 是 PDB 在美国的主要门户,提供检索界面、验证报告、API 和可视化工具。做基于结构的药物设计时,真正的技能不是「找到结构」,而是判断找到的结构能不能用——RCSB 提供的质量指标就是做这个判断的依据。

高级检索

# Search API:找某靶点的高分辨率共晶结构
curl -X POST https://search.rcsb.org/rcsbsearch/v2/query -H "Content-Type: application/json" -d '{
  "query": {"type": "group", "logical_operator": "and", "nodes": [
    {"type": "terminal", "service": "text", "parameters": {
      "attribute": "rcsb_polymer_entity.pdbx_description",
      "operator": "contains_phrase", "value": "epidermal growth factor receptor"}},
    {"type": "terminal", "service": "text", "parameters": {
      "attribute": "rcsb_entry_info.resolution_combined",
      "operator": "less_or_equal", "value": 2.5}},
    {"type": "terminal", "service": "text", "parameters": {
      "attribute": "rcsb_entry_info.nonpolymer_entity_count",
      "operator": "greater", "value": 0}}
  ]},
  "return_type": "entry",
  "request_options": {"paginate": {"start": 0, "rows": 100}}
}'
import requests

def fetch_entry_meta(pdb_id):
    r = requests.get(f"https://data.rcsb.org/rest/v1/core/entry/{pdb_id}")
    d = r.json()
    return {
        "id": pdb_id,
        "method": d["exptl"][0]["method"],
        "resolution": d.get("rcsb_entry_info", {}).get("resolution_combined", [None])[0],
        "r_free": d.get("refine", [{}])[0].get("ls_rfactor_rfree"),
        "r_work": d.get("refine", [{}])[0].get("ls_rfactor_rwork"),
        "year": d["rcsb_accession_info"]["initial_release_date"][:4],
    }

for pid in ["1M17", "4HJO", "5UG9"]:
    print(fetch_entry_meta(pid))

判断结构能不能用:五个指标

指标 可接受 警惕
分辨率 < 2.0 Å 2.0~2.5 Å > 3.0 Å
Rfree < 0.25 0.25~0.28 > 0.30
Rfree − Rwork < 0.05 0.05~0.07 > 0.07(可能过拟合)
配体 RSCC > 0.9 0.8~0.9 < 0.8(配体位置存疑)
配体 RSR < 0.1 0.1~0.2 > 0.2

最容易被忽略但最重要的是配体的 RSCC / RSR——它们衡量配体模型与实际电子密度的吻合程度。整体分辨率 1.8 Å 的结构,配体部分照样可能拟合得很差(配体常处于柔性区域、占据率不足)。做基于结构的设计前,一定要单独看配体的密度质量,否则你可能在一个根本不确定的结合姿势上做了三个月优化。

验证报告怎么看

# 下载 wwPDB 验证报告(PDF 或 XML)
wget https://files.rcsb.org/pub/pdb/validation_reports/m1/1m17/1m17_validation.pdf
wget https://files.rcsb.org/pub/pdb/validation_reports/m1/1m17/1m17_validation.xml.gz

报告首页有个「滑块图」,把这个结构的各项指标与 PDB 中同分辨率区间的所有结构对比,百分位越靠左越好。重点看 Clashscore(原子冲突)、Ramachandran outliers、Sidechain outliers、以及配体部分的专门评估。

批量下载

# 单个结构(推荐 mmCIF)
wget https://files.rcsb.org/download/1M17.cif
wget https://files.rcsb.org/download/1M17.pdb

# 生物学装配(注意:与不对称单元不同)
wget https://files.rcsb.org/download/1M17.pdb1.gz

# 批量
for id in 1M17 4HJO 5UG9; do
  wget -q "https://files.rcsb.org/download/${id}.cif" -O "structures/${id}.cif"
done

选结构的实际策略

  • 优先选与你的配体化学型相近的共晶结构:蛋白口袋会随配体诱导契合而变形,用结构相近配体的复合物做对接,成功率明显更高。
  • 不要只用一个结构:同一靶点的多个结构常有构象差异。选 3~5 个代表性构象做集合对接,比赌单一结构稳健。
  • 注意突变体:很多结构是为了便于结晶而做的突变体,要确认突变位点是否在结合位点附近。
  • 看清物种:人源与鼠源蛋白的口袋可能有关键差异。
  • apo 结构慎用:无配体结构的口袋常处于关闭构象,直接对接容易失败。

上手提示

  • 整体分辨率好不代表配体拟合好,务必单独查配体的 RSCC / RSR;
  • Rfree 与 Rwork 差距过大提示过拟合;
  • 优先选与自家化学型相近的共晶结构,并用 3~5 个构象做集合对接;
  • 下载时注意区分不对称单元与生物学装配。

延伸资源