多重检验校正在线计算:BH (FDR)、BY 与 Bonferroni
同时做几万次检验时,光看 p < 0.05 必然产生大量假阳性:做 20000 次检验, 即使全是零假设,也会有约 1000 个「显著」结果。所以差异表达、GWAS、富集分析都必须做多重检验校正。
Bonferroni 最保守:把阈值除以检验次数,p_adj = p × n。
它控制的是 FWER(至少出现一个假阳性的概率),代价是几乎把所有真信号也一起杀掉。
Benjamini–Hochberg (BH) 控制的是 FDR(在你宣称显著的结果里,假阳性所占的期望比例)。 算法是:
- 把 n 个 p 值从小到大排序,第 i 个记作 p₍ᵢ₎;
- 计算
q₍ᵢ₎ = p₍ᵢ₎ × n / i; - 从最大的 i 往回取累积最小值,保证 q 单调不减;
- 截断到 1。
怎么理解 q = 0.05: 不是「这个结果有 95% 概率是真的」,而是 「如果我把所有 q ≤ 0.05 的结果都当作阳性,这批结果里平均有 5% 是假阳性」。 FDR 是对一批结果的陈述,不是对单个结果的陈述——这是最常被讲错的一点。
BH 的前提是各检验相互独立或正相关。强负相关的情形要用 Benjamini–Yekutieli(BY),本页第三列就是它。BY = BH × C(n),C(n) = 1 + 1/2 + … + 1/n,在任意相关结构下都成立,代价是更保守——n = 10 时 C(n) ≈ 2.93,n = 1000 时约 7.49,检验越多惩罚越重。
常见问题
q = 0.03 是什么意思?
它是 FDR 的估计:把所有 q ≤ 0.03 的结果都判为阳性时,这批阳性里平均约 3% 是假的。它描述的是一批结果,不是单个结果的真假概率。
BH 和 Bonferroni 选哪个?
探索性分析(差异表达、富集)通常用 BH,需要容忍一定假阳性换取灵敏度;确证性检验或安全性判断偏向 Bonferroni。
p 值里有 0 会怎样?
p = 0 校正后仍是 0。实际数据中的 0 往往是下溢,建议保留原始高精度 p 值。
相关解读
- 2026-10-29
胶质母细胞瘤复发背后的巨噬细胞-间质反馈环,与人参皂苷Rd在糖尿病创面的M2极化证据
三篇文章合起来回答同一问题:巨噬细胞被疾病微环境改造的逻辑是什么,以及这种可塑性能否被药物引导到修复方向。GBM复发和脓毒症心肌病的综述描述了"被劫持"的一侧,人参皂苷Rd在糖尿病小鼠创面的实验数据给出了反向证据。
- 2026-10-29
分开推断调控网络让中性粒细胞肿瘤重编程分析失真
三篇单细胞方法论文各自踩到同一个坑:把两种条件或分析步骤分开建模,独立优化引入的噪声在比较时会伪装成真实差异。NetDes-Duo联合推断调控网络用于中性粒细胞肿瘤重编程,ConvexGating把聚类与分选门控联合优化,GWAS与iPSC-QTL整合定位神经退行性疾病风险至小胶质细胞。三篇文章在不同层次上给出同一结构的解法。
- 2026-10-28
CD8签名预测布鲁氏菌病分期,但黑色素瘤应答由TLS空间结构决定
三项研究同时触碰一个核心问题:单细胞转录信息能预测多少关于疾病的事?布鲁氏菌病里,外周血CD8签名已经足够;黑色素瘤里,TLS空间结构才是关键;体内CRISPR近邻筛选则把问题推向了遗传机制。