跳转至

磷酸化蛋白组学分析


一句话说明

磷酸化蛋白组学专门研究蛋白质上磷酸基团(-PO4)的添加和去除——磷酸化是细胞信号传导的"开关",就像灯的开关控制灯亮灭一样,磷酸化控制蛋白质的活性状态。


核心知识点

要点1:磷酸化基础

  • 磷酸化位点:主要发生在丝氨酸(Ser/S,占~86%)、苏氨酸(Thr/T,~12%)、酪氨酸(Tyr/Y,~2%)
  • 激酶(Kinase):负责"加磷酸"的酶,人类基因组有~500种
  • 磷酸酶(Phosphatase):负责"去磷酸"的酶
  • 生物学意义:调控信号通路、蛋白活性、蛋白-蛋白相互作用、蛋白定位

要点2:磷酸化肽段富集

  • 为什么要富集:磷酸化肽段在总肽段中占比极低(<2%),不富集几乎检测不到
  • TiO2富集:最常用,二氧化钛亲和吸附磷酸基团
  • IMAC富集:固定化金属离子亲和色谱(Fe³⁺/Ti⁴⁺),与磷酸基团配位结合
  • ERLIC色谱:静电排斥亲水色谱,同时基于电荷和亲水性分离
  • 多种方法组合:TiO2 + IMAC互补可提高磷酸化位点覆盖率

要点3:磷酸化位点定位

  • 位点定位(Site Localization):确定磷酸基团在肽段的哪个残基上
  • 问题:如果肽段有多个Ser/Thr/Tyr,磷酸基团可能在任何一个上
  • 评分方法
  • ptmRS(MaxQuant内置)
  • Ascore
  • PhosphoRS
  • 可信标准:定位概率 > 0.75 视为高置信度位点(Class I)

要点4:磷酸化组学数据分析

  • 激酶-底物预测:用已知激酶的磷酸化motif预测上游激酶
  • PhosphoSitePlus数据库:最权威的磷酸化位点数据库
  • NetPhorest/GPS:激酶底物预测工具
  • 通路分析:差异磷酸化位点富集到信号通路(KEGG、Reactome)
  • 激酶活性推断:根据多个已知底物的磷酸化变化推断激酶活性(KSEA)

实战代码

# === 磷酸化蛋白组学下游分析 ===
import pandas as pd
import numpy as np
from scipy.stats import ttest_ind

# 1. 读取MaxQuant磷酸化位点表
phospho = pd.read_csv("Phospho (STY)Sites.txt", sep="\t")

# 2. 基本过滤
phospho = phospho[phospho["Reverse"] != "+"]           # 去decoy
phospho = phospho[phospho["Potential contaminant"] != "+"]  # 去污染物
phospho = phospho[phospho["Localization prob"] > 0.75]  # 只保留高置信位点(Class I)
print(f"Class I磷酸化位点数: {len(phospho)}")

# 3. 提取强度数据并log2变换
intensity_cols = [c for c in phospho.columns if c.startswith("Intensity ")]
phospho_int = phospho[intensity_cols].replace(0, np.nan)  # 0替换为NaN
phospho_log2 = np.log2(phospho_int)  # log2变换

# 4. 差异磷酸化分析
group1 = intensity_cols[:3]  # 实验组
group2 = intensity_cols[3:6]  # 对照组

results = []
for i, row in phospho_log2.iterrows():
    g1 = row[group1].dropna().values
    g2 = row[group2].dropna().values
    if len(g1) >= 2 and len(g2) >= 2:
        fc = g1.mean() - g2.mean()  # log2FC
        _, pval = ttest_ind(g1, g2)
        results.append({
            "Gene": phospho.loc[i, "Gene names"],
            "Position": phospho.loc[i, "Position"],
            "Amino acid": phospho.loc[i, "Amino acid"],  # S/T/Y
            "log2FC": fc,
            "pvalue": pval
        })

df_res = pd.DataFrame(results)
print(f"差异磷酸化位点(|FC|>1, p<0.05): "
      f"{len(df_res[(abs(df_res['log2FC'])>1) & (df_res['pvalue']<0.05)])}")
# === 激酶活性推断(KSEA方法) ===
# 使用KSEAapp R包

# install.packages("KSEAapp")  # 需要先安装
library(KSEAapp)

# 准备输入数据:磷酸化位点的log2FC
# 格式:Substrate | Gene | Kinase | log2FC
ksea_input <- data.frame(
  Substrate = c("AKT1_S473", "GSK3B_S9", "MTOR_S2448"),  # 底物_位点
  Gene = c("AKT1", "GSK3B", "MTOR"),  # 基因名
  log2FC = c(1.5, -0.8, 2.1)  # 磷酸化变化倍数
)

# 运行KSEA分析
# ksea_result <- KSEA.Scores(ksea_input, ...)  # 推断激酶活性变化

面试常问点

Q1: 为什么磷酸化组学需要特殊的富集步骤?

参考答案:因为磷酸化是一种低化学计量比的修饰——一个蛋白的磷酸化比例通常只有1-10%,加上磷酸化肽段在电喷雾离子源中的电离效率偏低,如果不富集,它们的信号会被大量未修饰的肽段淹没。就像在一万个人里找10个戴红帽子的人,直接找很难,但如果先用"红帽子过滤器"把戴红帽子的人筛出来,就容易多了。

Q2: 磷酸化位点定位概率是什么?

参考答案:一个磷酸化肽段可能有多个潜在的磷酸化位点(比如肽段中有3个Ser),位点定位概率是通过碎片离子谱图计算的,表示磷酸基团在特定残基上的概率。例如ptmRS算法会计算每个候选位点的打分,概率>0.75的叫Class I(高置信度),0.5-0.75的叫Class II。发表论文通常只报告Class I位点。


速查卡片

问题一句话答案
磷酸化主要发生在哪些氨基酸?Ser(~86%)、Thr(~12%)、Tyr(~2%)
常用富集方法?TiO2和IMAC,两种互补使用效果更好
Class I位点标准?定位概率>0.75
PhosphoSitePlus是什么?最权威的磷酸化位点及激酶-底物关系数据库
KSEA是什么?激酶底物富集分析,用底物磷酸化变化推断激酶活性
人类基因组有多少激酶?约500种蛋白激酶("激酶组")