MaxQuant 工作流程详解

说实话,很多人把 MaxQuant 当成一个黑盒子——点一下运行就等结果。但真正用它做过大规模 DIA 或者 TMT 项目的人都知道,同一个 RAW 文件,参数设不对,搜库结果能差出好几倍。我刚开始摸索那会儿,就吃过这个亏。

MaxQuant 的工作流程,说白了就三大块:数据导入 → 搜库匹配 → 定量与质控。每一块都有不少坑,我一个个讲到位。

MaxQuant 工作流程总览 原始质谱数据导入 Andromeda 搜库 定量与质量控制 RAW 文件加载 峰检测 & 去卷积 预处理 序列数据库匹配 PSM 打分 & FDR 肽段离子提取 定量归一化 质量控制与后处理 输出结果 💡 提示: 每个阶段都有关键参数影响最终结果。例如,峰检测的“Top MS/MS per 30 s”直接影响鉴定数量。

原始质谱数据导入

这一步看似简单,但坑最多。MaxQuant 支持直接读取 Thermo RAW 文件(.raw)、Bruker 的 .d 文件夹、以及 mzXML 格式。我个人习惯用 Thermo RAW,因为转换少、保留的扫描信息最完整。

导入时,软件会自动做两件事:识别扫描事件和提取离子流。你不需要干预,但有几个参数得注意:

  • Raw file location:路径不能有中文或特殊字符,否则加载会报错。我有一次因为项目目录带了个“&”,卡了半小时。
  • First dimension mass accuracy:默认 4.5 ppm,对 Orbitrap 数据够用。如果你用的是 Q-TOF,建议放宽到 20 ppm,不然峰匹配不上。
  • Top MS/MS per 30 s:默认 10。数据量大的 DIA 项目,我会调高到 15-20,但别开太高,不然假阳性飞涨。

我的小窍门: 多文件批量导入时,最好用文本文件列出所有 .raw 路径,一行一个。MaxQuant 支持这种“batch”模式,比手动一个个拖拽靠谱得多。

Andromeda 搜库

搜库引擎 Andromeda 是 MaxQuant 的核心。它不是独立软件,而是嵌入在 workflow 里。搜库的质量,很大程度上取决于你给的数据库和参数。

这里我说几个关键点:

参数推荐值说明
EnzymeTrypsin/P允许 KR 前存在脯氨酸切割,更接近真实酶切
Max missed cleavages2超过 2 个漏切鉴定数会暴增,但假阳性也会
Peptide length min/max7/25太短或太长的肽段,匹配可靠性差
PSM FDR0.01严格 1% FDR,常用
Protein FDR0.01蛋白质水平 FDR,建议匹配

重点: Andromeda 使用目标-诱饵库进行 FDR 估计。如果你用污染库,记得在 Contaminants 里勾选。我曾经漏勾,结果角蛋白成了 top hit,太尴尬。

还有一点:搜库时的“Match between runs”功能。这个默认开启,但我不建议在数据质量差时用——它会强行对齐不同 run 的肽段,引入偏差。我一般的做法是:先不做匹配,跑一轮看结果,如果鉴定数太少,再尝试开启。

定量与质量控制

定量是用户最关心的部分。MaxQuant 支持两种模式:label-free(LFQ)和 isobaric labeling(TMT/iTRAQ)。我主要讲 LFQ。

定量过程的核心是提取肽段的 XIC(Extracted Ion Chromatogram)。每个前体离子在 m/z 和保留时间维度上找到峰面积。这里有个坑:“Minimum ratio count” 参数。默认是 2,意思是至少需要 2 个定量值才参与计算。如果样本质量差,很多肽段只出现一次,定量矩阵就会很稀疏。我会根据数据量调整:

  • 如果样本组内重复性好,保持默认 2。
  • 如果重复性差(比如临床样本),降到 1,但心里要有数——稀疏数据的结果需谨慎解读。

避坑指南: 我曾经在一个 TMT 项目中把“Type”参数设成了“Reporter ion MS2”,但忘记指定 Reporter mass shift。结果定量全乱,重新跑了三天。一定记得检查 Reporter 通道设置,最好先拿一个小数据集验证。

质量控制这一步,MaxQuant 会自动输出几个文件:

evidence.txt      # 所有肽段鉴定与定量信息
peptides.txt      # 肽段汇总
proteinGroups.txt # 蛋白质水平定量
summary.txt       # 基本统计信息

我个人习惯先看 summary.txt,里面包含每个 RAW 文件的鉴定数、定量数、MS/MS 谱图数。如果两个重复的鉴定数相差超过 20%,那很可能前处理有问题,我会先跑回质控实验室,而不是继续调参。

还有一个容易忽视的点:“Normalization”。MaxQuant 默认使用 LFQ 算法进行归一化,但对某些项目(比如除盐不彻底导致的偏移),我会手动勾选“Advanced normalization”或者在后续用 Perseus 做。总之,不要盲目信任默认参数。

经验: 每次跑完一个项目,我会把所有参数保存成一个 .xml 文件。下次相同类型的数据直接加载,省时省力。MaxQuant 的 mqpar.xml 里记录了所有参数,备份它比记笔记靠谱。