---
title: "Spectronaut中数据归一化策略"
author: "omicsolution"
account: "omicsolution"
published_at: "2024-08-12T14:43:21+08:00"
captured_at: "2026-08-26T17:26:31.212428+08:00"
source_url: "https://mp.weixin.qq.com/s/k0vwVwNPr0uTWJ4PPwNF1w"
---

# Spectronaut中数据归一化策略
![图片 1](images/001.png)

![图片 2](images/002.png)

Spectronaut

2024

本文会介绍蛋白质组学数据处理过程中归一化的必要性以及不同情境下，在DIA数据分析软件Spectronaut中如何进行归一化操作。

不同文案中对归一化描述些许差别，但是一般来讲，归一化＝标准化＝Normalization=Normalisation，周知。

01

为什么要进行归一化

蛋白质组学分析得到的生物样本之间的差异性，一方面是由于生物体自身的差异性，另一方面不可避免的也有来自于我们样本制备、LC-MS/MS检测、进样量的差异等实验过程引入的变异。这些实验过程引入的变异如果不进行矫正，产生的偏差很有可能影响我们最终的生物学结论，因此，我们在得到初步的定量结果之后，首先会对样本之间的信号强度进行归一化处理，以最大程度的减少系统波动及定量误差导致的蛋白丰度的变异。

02

Spectronaut中可用的归一化算法

Spectronaut（以下简称SN） 提供两种算法执行归一化，即局部（Local normalization）和全局（Global normalization）归一化。

（1）全局归一化（Global normalization）的前提是假定每个待分析的样本中绝大多数的蛋白表达水平是无显著差异的，因此基于每个样本定量到的所有肽段母离子（precursor）信号强度的中位数、平均值或几何平均值来进行数据归一化。此方法下，每个样本中所有的肽段都共用一个归一化系数。

（2）局部归一化（Local normalization）的前提假设是系统偏差并非是线性存在的，而是与肽段母离子的丰度有关。这种非线性可能是由于离子抑制效应对测量肽的丰度产生的影响，也有可能是由于接近检测器饱和或背景检测限对测量肽的丰度产生的影响。因此，该算法会将所检测到的肽段母离子划分到不同的分组中，每个分组单独进行线性回归归一化，并将得到的归一化系数应用到对应分组的肽段母离子中。因此，此方法下，每个样本中的肽段会采用多个归一化系数进行归一化处理。

可以理解为，这种处理方式能在一定程度上降低喷雾不稳引发的偏误。

参考文献：

J. M., Smith, R. D., & Lipton, M. S. (2006). Normalization approaches for removing systematic biases associated with mass spectrometry and label-free proteomics. Journal of Proteome Research, 5(2), 277–286. https://doi.org/10.1021/pr050300l

03

Spectronaut的默认设置

默认的SN会根据提交分析的样本数量规模来选择数据归一化的方法，如果此次分析中提交的样本数目小于500个，软件将会默认采用局部归一化（Local normalization）的方法，如果样本数量大于500将会采用全局归一化（Global normalization）方法。

Local normalization的归一化在Elution Group即precursor水平进行，归一化之后的EG.Quantity会直接用来基于MaxLFQ算法进行PG.Quantity的计算。

![图片 3](images/003.png)

Row selection默认选择Automatic，软件会挑选Top 10,000的precursor用于归一化系数的计算，挑选的原则基于数据完整性（即缺失比例低的）。

也支持用户自行设定标准，即:

Sparse：在≥1个run中鉴定到的precursor，换句话说就是所有的precursor

Complete：在所有run中共有的precursor

Percentile：用户自定义占比

04

默认归一化替代方案

通常情况下，默认参数适用于绝大多数的项目，但是用户也可以自定义数据归一化的方法，其实对于大多数实验来说，局部归一化（Local normalization）和全局归一化（Global normalization）不会造成结果的巨大差别，但是由于局部归一化的算法更加复杂，因此需要占用更多的服务器资源和分析时间，尤其是对于大队列项目。在一些实验中，局部归一化可以表现得更好，比如将多个物种的蛋白质组混合在一起分析，或者分析非常低复杂度的样本。因此在自定义数据归一化方法时我们要视具体情况取舍。

数据归一化也可以关闭，比如我们分析复杂度差别较大的样本时，不进行数据归一化也是可取的。

例如类似，热蛋白质组学分析（TPP）实验，样品间蛋白组成本身受实验影响，相似性就极低的情况。

此外，sne combine流程默认只能采用全局归一化方法。

如果需要关闭数据归一化功能则在参数设置界面，Settings→Quantification→Cross Run Normalization 将此参数不勾选即可。

如果需要修改归一化的方法，则在Settings→Quantification→Normalization Strategy下拉选项中进行选择即可

05

归一化的效果

如果选择进行数据的归一化，则归一化前后的结果可以在Post Analysis界面的Analysis Overview节点的Normalization模块查看。Original Response和Normalized Response分别展示了归一化之前和之后的每个run中所有母离子信号强度（log10转换）的分布。

此外，在Report视图下，SN会报告归一化之后的母离子的定量值（EG.Quantity）及对应的归一化系数（EG.NormalizationFactor），此归一化系数也会被应用到碎片离子定量，归一化后的碎片离子定量值为（F.NormalizedPeakArea），原始定量值为（F.PeakArea）。

最终，SN会报告哪些母离子（EG.UsedInNormalizationSet）被用于进行归一化计算。

![图片 4](images/004.png)

06

分级样本的归一化

对于分级DIA，数据归一化是按照馏分（fraction）进行的，不同样本的相同馏分彼此之间进行数据归一化，因此就需要用户在参数设置中的实验设置的Fraction列中正确指定每个馏分的顺序，如下图所示：

![图片 5](images/005.png)

上图RunLabel列即为提交的数据名称，Fraction为当前run所属的馏分顺序，Replicate即为当前run所属的生物学/技术重复顺序（同一样本的所有馏分所对应的Replicate顺序应相同），Condition即为当前所属的分组。

07

修饰组学的归一化

全蛋白质组分析中，软件默认将所有鉴定成功的precursors的定量值作为数据标准化的依据，但修饰组如果采用此种方式，受限于富集效率的影响，可能会引入更多偏差，所以此时，可以通过选定后续目的修饰作为标准化依据，软件就会用带有该种修饰的precursors进行数据标准化计算归一化系数，后续将此系数应用至所有肽段，包括非磷酸化部分。

![图片 6](images/006.png)

08

基于特定蛋白的归一化

SN支持基于特定蛋白进行数据归一化，如需设定基于某一个特定蛋白（例如，GAPDH被认为是常见的管家蛋白，若以GAPDH对数据进行归一化处理）。

则可以将该蛋白的序列单独创建一个FASTA文件（例:GAPDH.fasta），搜库时将该蛋白的FASTA文件和完整的库文件（需剔除掉用于归一化的蛋白）一起进行检索，Settings→Quantification→Normalization Filter Type→FASTA Name Filter→FASTA Name 填写该蛋白对应的FASTA文件名即可，参数设置如下：

![图片 7](images/007.png)

此时，SN会根据GAPDH的precursor水平进行归一化系数的计算，并将该归一化系数用于对应run的信号强度归一化处理。

09

额外的归一化策略

上述归一化流程均基于precursor水平，有老师会疑惑是否还需要在蛋白水平层面进行额外的数据归一化处理。

理论上基于precursor水平进行归一化之后，再次对蛋白水平进行归一化对整体定量结果不会产生显著影响。

以上是易算近期对数据归一化的一些思考，如果有老师有关于归一化策略的疑惑，欢迎您后台留言，我们一齐探讨🫰🏻。
