第4章 · 4.4

4.4 缺失值:机制、填补与克制

Missing Values: Mechanisms, Imputation and Restraint
摘要 单细胞质谱的定量矩阵里,缺失是常态而非例外:肽段层常过半,蛋白层仍有约四分之一。本节从离子计数的物理随机性出发,区分完全随机缺失与非随机缺失(左删失)两种机制的统计后果,梳理常数、近邻与删失模型三类填补方法的假设与失真方向,立下纪律——填补值不得参与差异检验,结论须能经受填补与否的敏感性检验。

4.4.1 缺失从哪里来:三类来源的叠加

4.1 节把定量矩阵描述成一张在蛋白与细胞两个方向上同时稀疏的表:每个细胞只贡献一小段列向量,每种蛋白只在部分细胞里有值。稀疏不是事故,而是测量的本性。要处置这些空格,先得弄清它们各自的来历——缺失值(missing value)的机制决定它的统计含义,统计含义决定处理方式,这是本节的主线。

第一类来源是数据依赖采集(DDA)的挑选抖动。1.4.6 节已经看到,DDA 每个循环按 MS1 强度取前 N 个母离子,名次边界受噪声与共洗脱的扰动:一条丰度中等的肽段,这次排进前 N、下次差一点落选。这类缺失与自身丰度只有微弱关系,主要反映采集运气,在机制谱系上最接近完全随机缺失(missing completely at random, MCAR)。DIA 以固定时间表覆盖全范围,把"测没测到"从概率事件变成深度问题,缺失结构因此更接近均匀截断。

第二类来源是离子数不足。2.1 节用泊松采样(Poisson sampling)算过这笔账:期望 λ 个离子而一个都不来的概率是 e−λ,λ=1 时约 37%,λ=3 时约 5%。单细胞进样量只有约 100–200 pg,低丰度肽段的 λ 往往是个位数——"测不到"多数时候就是"太少",丰度越低越容易缺失,缺失概率与真实丰度直接挂钩。等压载体路线在此之上再加一道人工下限:报告离子必须从载体背景中分辨出来,样品/载体信号比(SCR)过低的定量值会在质控中被剔除(4.5 节展开),效果等同于把检出限(limit of detection, LOD)整体抬高。

第三类来源在细胞一侧。纳升级制备的上样损失、捕获与洗脱效率的逐细胞波动,会让个别细胞整体信号偏低、大面积发空。这类缺失按列(细胞)聚集,与其说关乎蛋白,不如说关乎细胞质量——4.3 节按中位变异系数过滤细胞,就是在对矩阵做任何缺失处理之前,先摘掉这些整列发空的细胞。

三类来源以不同比例混合在同一张矩阵里:高丰度蛋白的零星缺失多半是挑选抖动,低丰度蛋白的成片缺失多半是检出限,个别整列发空是细胞质量。混合意味着任何单一假设都只对一部分格子成立,因此本节要反复回到"先诊断、再分层"这条工作路径。

4.4.2 机制二分法:MCAR 与 MNAR

统计学对缺失机制有严格分类(Rubin, 1976)。以 Rij 表示观测指示变量(missingness indicator)——蛋白 i 在细胞 j 有值记 1、缺失记 0——两种极端机制可以写成:

MCAR:P(Rij = 1 | xij) = P(Rij = 1); MNAR:Rij = 1 当且仅当 xij ≥ Lj
(4.4-1)x 为真实(对数)强度,L 为该细胞的检出限。MCAR 的缺失概率与丰度无关;MNAR 的缺失由丰度是否越过检出限决定,即左删失。中间档"随机缺失(missing at random, MAR)"指缺失依赖观测到的其他变量,在质谱数据里作用有限,起作用的主要是两端。
定义

完全随机缺失(MCAR):缺失概率与一切变量——包括未被观测的真实丰度——无关,仅由采集过程的随机性决定。非随机缺失(missing not at random, MNAR):缺失概率依赖未被观测的真实值本身;质谱中最常见的形态是左删失(left-censoring)——丰度低于检出限时必然缺失,缺失携带"值很低"的信息。

两种机制的统计后果截然不同。MCAR 下,缺失不携带关于丰度的信息:删掉高缺失的行或列只损失样本量、不引入偏倚,留下的观测仍是总体的随机样本;填补是锦上添花,做得好坏只影响方差。MNAR 下,"观测到"本身就是选择的结果:把分布从左边截去一段,均值必然右移。设真实强度服从 N(μ, σ2),只看不低于检出限 L 的观测值,其期望为:

E[X | X ≥ L] = μ + σ·λ(α), λ(α) = φ(α) / (1 − Φ(α)), α = (L − μ) / σ
(4.4-2)φ 与 Φ 为标准正态的密度与分布函数,λ(α) 即逆米尔斯比(inverse Mills ratio)。例:μ=0、σ=1(log2 尺度)时,L=−1 给出 λ(−1) = 0.242/0.841 ≈ 0.29,观测均值上移约 0.29 个 log2 单位(约 22%);L=0 给出 λ(0) ≈ 0.80(约 74%)。截尾并不发生在填补那一刻——只要"只看观测值",这个偏移就已经在场。

这笔账的含义直白:MNAR 下把缺失当作随机的任何处理——直接删行删列,或用与丰度无关的规则填一个"体面"的值——都会系统性高估低丰度蛋白的丰度,且删得越狠偏得越多。填补方法不是中性的工具箱:每种方法都内置一条机制假设,假设错了,失真就有方向、可预期。

4.4.3 诊断:让缺失自己开口

机制读不出于单个空格,却能从整张矩阵的统计形态读出。最常用的一张图按蛋白聚合:横轴取该蛋白观测值的平均强度(log2),纵轴取它的缺失比例。MCAR 主导时,散点呈无趋势的水平带;MNAR 主导时呈清晰负相关——越弱越缺。相关性(如 Spearman ρ)为这个判断给出一个数:ρ 接近零偏向 MCAR,显著负值偏向 MNAR,中间地带是混合机制(Karpievitch et al., 2012;Lazar et al., 2016)。图 4.4-1 把两种极端形态并排画出。

完全随机缺失(MCAR)与非随机缺失(MNAR)在缺失率对平均强度散点上的两种形态 完全随机缺失(MCAR) 缺失率与平均强度无关:水平带 0 25 50 75 100 12 14 16 18 20 平均强度(log2) (%) 平均缺失率 ≈ 44% 非随机缺失(MNAR,左删失) 低强度高缺失:负相关 低于检出限 0 25 50 75 100 12 14 16 18 20 平均强度(log2) 检出限(示意)
图 4.4-1 缺失机制的诊断散点:按蛋白聚合的缺失比例对平均强度。左:MCAR 主导,缺失率与强度无关,散点构成无趋势的水平带(虚线为平均缺失率)。右:MNAR(左删失)主导,低强度蛋白高缺失,呈清晰负相关;虚线为示意检出限,其左侧(浅灰区)的蛋白几乎必然大面积缺失。实测数据多为两种形态的叠加,负相关越强,左删失成分越重(Karpievitch et al., 2012;Lazar et al., 2016;作者整理)。

第二个方向同样重要:把缺失率按细胞(列)统计。蛋白方向的散点回答"哪些缺失源于低丰度";细胞方向的分布回答"哪些细胞整体发空"。两幅图合看,矩阵里每个空格都有了一个先验归因——落在低丰度蛋白行上的是删失嫌疑,落在劣质细胞列上的是质量嫌疑。诊断先于处置,这一步代价极小(算几个比例、画一张散点),却决定后面每一步的合法性。

量级也要有概念。单细胞质谱的肽段层矩阵,缺失比例常在半数上下甚至更高(量级,随流程与数据集而异);过滤与归并到蛋白层后明显下降——scp 教程所用的 SCoPE2 子集在蛋白层的平均缺失约 25%(Grégoire et al., 2024)。作为对照,常规批量蛋白组学的缺失多在百分之几到百分之十几。高出一个量级的缺失比例,正是缺失处理在单细胞分析里配得上一整节的分量所在。

习题 4.4-1

某单细胞数据集的蛋白层矩阵含 1,842 种蛋白。按蛋白作缺失比例对平均强度的散点,Spearman ρ = −0.63;按平均强度十等分,最低十分位的平均缺失比例为 72%,最高十分位为 9%,全表平均 38%。(a)判断主导机制并给出依据。(b)若无视诊断、对全表用 k 近邻填补,预计引入何种偏差?(c)给出与诊断相容的处理方案。

参考解答

(a)显著负相关加上"最低十分位缺失 72%、最高十分位 9%"的梯度,指向左删失(MNAR)主导;但高十分位仍有 9% 缺失,说明 MCAR 成分并存,总体是混合机制。(b)低丰度蛋白的缺失被相似行的较高观测值填入,低丰度端整体上移,缺失与强度的负相关信息被抹掉;此后一切以均值为基础的比较都偏向"低丰度并不那么低",组间差异被压缩。(c)分层处理:对缺失与强度无关的高完整度蛋白可用近邻类方法;对低丰度、高缺失蛋白改用左删失类方法,或干脆不填补、把结论降格为描述性陈述;无论哪条路径,关键结论都要经填补与否的敏感性检验,并按报告规范披露缺失比例与处理方式(Gatto et al., 2023)。

4.4.4 填补方法的谱系

填补(imputation)的本质是用假设换信息:模型替你说出"这个空格本来该是多少"。谱系按机制假设展开成两支(图 4.4-2):一支假定缺失与丰度无关,借观测值的结构外推;一支假定缺失源于左删失,把填补值放进检出限之下。

填补方法的谱系树:由机制假设(MCAR 或 MNAR)分为两支,各方法及其失真方向 缺失值的填补(imputation) 机制判定(4.4.3) 假定 MCAR:缺失与丰度无关 采集随机性主导(DDA 挑选抖动) 假定 MNAR:低丰度先缺失 检出限 / 左删失主导 k 近邻(kNN) 借 k 个最相似行的 对应值加权平均 失真:向邻居收缩, MNAR 格被抬高 矩阵分解 / 低秩 SVD、BPCA:以低秩 结构重构整块矩阵 失真:方差被压缩, 弱结构遭抹平 常数 / 左移正态 观测最小值,或从 左下方正态抽样 失真:若实为 MCAR, 人为压低真实值 删失模型(QRILC) 分位数回归显式建模 检出限之下的分布 失真:依赖删失假设 与参数的设定 谱系的两条主轴由机制假设决定;方法无高下,只有与机制匹配与否(Lazar et al., 2016)。 实测数据多为混合机制:分层处理,或以敏感性分析(4.4.5)兜底,不作全表一刀切。
图 4.4-2 填补方法谱系树。根节点先经机制诊断分作两支:假定 MCAR 的近邻与矩阵分解类(借观测结构外推),与假定 MNAR 的左尾类(把填补值放进检出限之下)。每个叶节点标注方法的典型失真方向——失真方向与机制假设错配直接相关,这正是"机制决定策略"的含义(Lazar et al., 2016;作者整理)。

左尾类为 MNAR 设计。做法是把填补值放在观测分布的左下方:取每列(细胞)的观测最小值、最小值减一个偏移,或从一条整体左移正态(down-shifted normal)的分布中随机抽取。逻辑与左删失的物理图像一致——缺失格的真实值大概率低于检出限,填补值就该落在检出限之下。失真方向同样明确:若该格实际是 MCAR(真实值并不低),这类方法会把正常值人为压低,凭空造出一条左尾。

k 近邻填补(k-nearest neighbours imputation, kNN)为 MCAR 设计。对缺失格,按其他蛋白(或细胞)上的欧氏距离找 k 个最相似的行,用它们在该列取值的(加权)平均填入。前提是缺失与丰度无关:邻居的观测值是缺失格真值的无偏代表,借值才有依据。失真方向有二:一是均值收缩——填补值总落在邻居的平均水平附近,分布向中心塌缩、方差被低估;二是对 MNAR 格的向上偏移——邻居多由较高值组成,借来的值系统性高于被删失的真值。Galaxy 教程的流程取 k=3(Gomoryova and Hecht, 2025)。图 4.4-3 的交互演示把第二笔账画了出来。

交互演示:左删失数据经 k 近邻填补后的分布上移 散点:两种相关蛋白,240 个细胞 绿点=观测;灰圈=缺失格真值;红菱=填补值 -3 -1 1 3 蛋白 A(log2 强度) 分布:填补前(描边)与填补后(填色) 纵轴为归一化后的细胞数 -3 -2 -1 0 1 2 3 蛋白 B(log2 强度) 检出限 L
缺失率 填补值均值 对应真值均值 填补后总均值上移
图 4.4-3 交互演示:左删失数据经 k 近邻填补后的分布上移。模拟 240 个细胞、两种相关蛋白(相关约 0.8);蛋白 B 低于检出限 L 的值被删失(灰圈——模拟里真值可见,实测中不可见),k 近邻(k=3,等权)按蛋白 A 的距离从观测细胞借值(红菱)。左面板可见填补值系统性落在真值上方;右面板对比真值分布(描边)与填补后分布(填色)。抬高 L 使缺失加重:左尾成片消失,填补值均值与对应真值均值之差拉大,缺失过半时连总均值都被显著推高。随机数由固定种子生成,重复载入结果一致(作者编制)。
习题 4.4-2
表 4.4-1k 近邻手算用定量矩阵(log2 强度;c4 列检出限为 13)
蛋白c1c2c3c4
P1101214NA
P211131518
P39111316
P4891112
P520212223

P1 在细胞 c4 缺失。(a)以 c1–c3 三列的欧氏距离度量蛋白间的相似性,找出与 P1 最邻近的两个蛋白。(b)按 k 近邻规则(k=2,等权平均)给出填补值。(c)设 P1 在 c4 的真值为 12——低于该细胞检出限 13 而被删失。比较填补值与真值,说明偏差的方向与倍数,并解释为什么丰度水平与 P1 最接近的 P4 反而帮不上忙。

参考解答

(a)d(P1, P2) = d(P1, P3) = √(1+1+1) = √3 ≈ 1.73,d(P1, P4) = √(4+9+9) = √22 ≈ 4.69,d(P1, P5) = √(100+81+64) = √245 ≈ 15.7。最近邻为 P2 与 P3(并列)。(b)填补值 = (18 + 16)/2 = 17。(c)真值 12,填补值高出 5 个 log2 单位,即约 25 = 32 倍。原因:k 近邻的成立前提是 MCAR——邻居的观测值应能代表缺失格的真值;本格实为左删失,而 P2、P3 的 c4 值(18、16)远在检出限之上。丰度与 P1 最接近的 P4(c4 = 12)在三维距离上反而更远,借值轮不到它。对 MNAR 格用 k 近邻必然向上偏;改用左移正态一类的方法,填补值会落在检出限之下,与真值同侧。

矩阵分解与模型化类是谱系的第三支。SVD、BPCA 一类以低秩结构重构矩阵,把缺失格当作待估参数与主结构一同求解,对 MCAR 型的混合缺失表现稳定,代价是连同弱结构一起抹平。再往模型化一端走,QRILC 一类把左删失显式写进模型——分位数回归直接对"检出限之下的分布"建模,不再假装缺失随机。模型化程度越高,对机制假设与参数设定越敏感;没有一种方法在所有机制下占优,这是系统性基准评测反复确认的结论(Lazar et al., 2016)。

4.4.5 克制:不该填补的场合

填补最常见的误用,是在差异检验之前。填补值由观测值经模型生成,几乎不携带新的独立信息;t 检验与方差分析却会把它们当作真实样本计数——自由度虚增、方差被人为压小,检验统计量随之失真。失真有两个方向:把一组大量缺失的格子填成邻居的均值,组间差异被抹平;把缺失填成统一的低值,凭空制造组间差异。两种都属伪差异,而且从 p 值表面看不出任何破绽。

警示

填补值不得参与检验统计量。差异丰度分析要么只用观测值(每个蛋白的有效样本量随缺失而变,照实报告),要么采用能处理删失的模型;填补后的矩阵可以进 PCA、聚类与 UMAP,不能直接进 t 检验。若不得不在填补数据上检验,须同时报告不填补版本的结果,并明示两版是否一致(Gatto et al., 2023)。

反过来,降维与聚类对填补相对宽容。PCA 与 UMAP 需要完整矩阵,教程流程正是为此在批次校正之前安排 k 近邻填补(4.4.6);此时填补值影响的是细胞在低维空间中的相对位置,而非某个蛋白的显著性。即便如此,基于填补数据的聚类结论也应标注数据来源,并尽量与"只在高完整度子矩阵上"得到的结果互相印证。

克制的操作化形式是敏感性分析(sensitivity analysis)

方法

敏感性分析的做法:至少在两种处理下重跑关键分析——填补与不填补各一版,或分别按 MCAR 与 MNAR 假设填补两版。结论一致,则报告并注明经敏感性检验;结论翻转,则把该发现降格为描述性陈述,等待更完整的数据。分析中"缺失比例"本身也可作为结果报告:一组检出 92%、另一组 11%,这个对比就是发现,无需任何填补。

习题 4.4-3

构造反例。蛋白 X 在 A 组 4 个细胞均有观测(log2 强度 14.0、14.2、13.8、14.0),在 B 组 4 个细胞全部缺失(真值均低于检出限,例如敲低所致)。k 近邻填补按整体谱形从 A 组借值,B 组得到 14.1、13.9、14.2、14.0。(a)在填补后的数据上做两组 t 检验,结论如何?错在哪里?(b)不填补,怎样陈述才是诚实的?(c)再构造一个反方向的反例:填补把本不显著的差异做成显著。

参考解答

(a)两组均值几乎相同(14.0 与 14.05)、组内方差极小,t ≈ 0.6,p 远大于 0.05,结论是"X 无组间差异"。错处:B 组的四个数不是测量,而是 A 组数据的复制品,检验的自由度与方差全部来自虚构数字;"整组低于检出限"本是极强的差异证据,填补把它洗成了"无差异"。(b)报告检出情况——A 组检出 4/4、B 组检出 0/4——把 X 列为"B 组未检出"的差异候选,用不依赖完整矩阵的方式(如检出率的 Fisher 精确检验)评估,或留待更深的测量,而不是给均值。(c)例:A、B 两组真分布相同(均值 14),A 组恰有两个缺失被填成列最小值 10,B 组无缺失;填补制造出的"下调"足以让 t 检验显著。两个方向同理:填补值进入统计量,显著性就不再只属于数据。

4.4.6 报告规范与教程流程的做法

社区白皮书把缺失处理列入必须报告的项目:数据完整性(逐层、逐样本类型的缺失比例)、缺失机制的诊断证据、处理方式(剔除阈值、填补方法与参数)及其对下游结论的影响(Gatto et al., 2023)。理由与本节立场一致——缺失处理不是把数据"洗干净"的杂务,它本身就在塑造统计量;不报告,结论便无从复核。

案例

k 近邻填补在教程流程中的位置。Galaxy 的 bioconductor-scp 教程(SCoPE2 子集)按如下顺序处理缺失:肽段层列中位数 + 行均值双重归一化并取 log2 → 剔除缺失超过 99% 的肽段 → 按主酶切蛋白归并到蛋白层 → 蛋白层归一化 → k 近邻填补(k=3)→ ComBat 批次校正 → PCA/UMAP。两个细节值得注意:其一,剔除在填补之前,阈值放得极宽(99%)——几乎全空的行无论何种方法都无从借值,先摘掉它们既省算力,也避免最离谱的填补;其二,填补位于蛋白层归一化之后、批次校正之前,服务对象是要求完整矩阵的降维与聚类,而非差异检验。填补被用在它擅长的场合,恰好示范了本节的纪律(Gomoryova and Hecht, 2025)。

把本节的立场收拢成一句话:机制决定策略,克制是默认美德。诊断先行——缺失率对强度的散点、双向缺失率矩阵、量级的概念;方法随后——近邻类配 MCAR、左尾类配 MNAR、模型化类慎用参数;纪律兜底——填补值不进检验统计量,关键结论过敏感性分析,处理方式与缺失比例随报告规范披露。下一个问题在 4.5 节:载体通道以一己之力抬高了整条检出限,也把比值压缩写进了每个定量值——缺失结构与它脱不开干系。


本节把缺失从"待清洗的脏数据"还原为"带结构的观测边界":

  • 机制:DDA 挑选抖动近 MCAR,离子数不足与载体下限近 MNAR(左删失),细胞质量造成列向缺失,三者混合;
  • 诊断:缺失率-强度散点与按蛋白、按细胞两个方向的缺失率统计先行;肽段层缺失常过半,蛋白层约四分之一(量级);
  • 处置:机制匹配方法,填补值不参与检验统计量,聚类与降维可容忍填补但须标注;关键结论以填补与否的敏感性分析兜底。

关键术语

完全随机缺失 (missing completely at random, MCAR)
缺失概率与丰度及其他一切变量无关的机制,源于采集随机性。
非随机缺失 (missing not at random, MNAR)
缺失概率依赖未被观测的真实丰度的机制,质谱中表现为左删失。
左删失 (left-censoring)
低于检出限的量被记为缺失而非零的观测结构。
检出限 (limit of detection, LOD)
可被可靠检出的最低信号水平,决定删失边界。
填补 (imputation)
以模型或规则为缺失格生成替代值的操作,本质是用假设换信息。
k 近邻填补 (k-nearest neighbours imputation)
以 k 个最相似行的对应取值加权平均填充缺失、假定 MCAR 的方法。
左移正态填补 (down-shifted normal imputation)
从左移收窄的正态分布抽取填补值、为左删失设计的方法族。
逆米尔斯比 (inverse Mills ratio)
φ(α)/(1−Φ(α)),量化左截尾对观测均值的抬升。
敏感性分析 (sensitivity analysis)
在不同缺失处理下重跑关键分析,以检验结论稳健性的规程。
数据完整性 (data completeness)
观测值占矩阵格子的比例,缺失率的补数,报告规范要求披露。
伪差异 (artefactual difference)
由填补或删失处理引入、而非生物学造成的组间差异。

参考文献与延伸阅读

  1. Rubin DB. 1976. Inference and missing data. Biometrika 63: 581–592.
  2. Karpievitch YV, Dabney AR, Smith RD. 2012. Normalization and missing value imputation for label-free LC-MS analysis. BMC Bioinformatics 13(Suppl 16): S5.
  3. Lazar C, Gatto L, Ferro M, Bruley C, Burger T. 2016. Accounting for the multiple natures of missing values in label-free quantitative proteomics data sets to compare imputation strategies. Journal of Proteome Research 15(4): 1116–1125.
  4. Specht H, Emmott E, Petelski AA, Huffman RG, Perlman DH, Koller A, Slavov N. 2021. Single-cell proteomic and transcriptomic analysis of macrophage heterogeneity using SCoPE2. Genome Biology 22: 50.
  5. Gatto L, Aebersold R, Slavov N, et al. 2023. Initial recommendations for performing, benchmarking and reporting single-cell proteomics experiments. Nature Methods 20: 375–386.
  6. Grégoire S, Vanderaa C, Gatto L. 2024. Standardized workflow for mass-spectrometry-based single-cell proteomics data processing and analysis using the scp package. Methods in Molecular Biology 2817: 177–.
  7. Vanderaa C, Gatto L. scp:单细胞蛋白组学数据处理工具包(Bioconductor),基于 QFeatures;文档见 uclouvain-cbio.github.io/scp/。
  8. Gomoryova K, Hecht H. 2025. Single cell proteomics data analysis with bioconductor-scp. Galaxy Training, training.galaxyproject.org.