4.3 节的实验流程以图像分析结束:对每个点读取前景与背景荧光,产出一张「基因 × 样本」的强度矩阵(4.1 节的表达矩阵)。但从原始强度到可信的生物学结论,中间还隔着三道统计关卡——背景校正(扣除点周围环形区域估计的非特异荧光)、归一化(normalization)(消除通道间与芯片间的系统偏差)与差异检验(在噪声中辨别真实的表达变化)。本节依次讨论这三道关卡:4.4.1 剖析偏差的来源并引入对数变换;4.4.2 梳理归一化方法的谱系;4.4.3 建立差异检验的线性模型框架;4.4.4 处理大规模多重检验;4.4.5 与 4.4.6 讨论结果的规范呈现与可重复性。这些方法是为微阵列发展的,但其中的统计思想——方差稳定、信息借用、假发现率控制——同样适用于 4.7 节的 RNA 测序数据。
4.4.1 系统偏差的来源与对数变换
微阵列测量的是荧光强度,而非 mRNA 分子数;从前者到后者,隔着多层与生物学无关的系统性因素。双色点样阵列(4.2 节)上最著名的干扰是染料偏倚(dye bias):Cy3 与 Cy5 两种花菁染料的标记效率、量子产额与光电倍增管响应并不相同,经验上 Cy5 通道往往整体偏高,使未经校正的数据中所有基因的比值系统性地偏离 1。第二类是打印针效应(print-tip effect):点样阵列由排成栅格的多个打印头逐点完成,不同针尖的点样量与点形态存在差异,同一打印头所印的点会呈现整体偏移。第三类是批次效应(batch effect):单色平台的比较在「芯片之间」进行,杂交日期、试剂批次、洗涤条件与扫描仪增益的漂移都会造成整片偏移;在多芯片实验中,批次效应的解释方差有时甚至超过生物学因素本身——这正是 4.3 节强调随机化与区组化的原因。第四类偏差最隐蔽:偏倚的大小往往不是常数,而随信号强度非线性变化,低强度端的比值偏倚最为严重(背景扣除后信噪比恶化、两种染料的检测下限不同)。
这些偏差叠加在一个不利的统计性质之上:荧光强度的均值—方差关系。原始强度的标准差近似随均值增大(约呈 SD ∝ μ 的常数变异系数关系),高强度基因的绝对噪声远大于低强度基因;若直接在原始刻度上检验,高强度基因的微小比例变化会被误判为显著,而低强度基因的真实变化会被淹没。对数变换同时缓解两个问题:其一,由 delta 方法可知 SD ∝ μ 的数据在 log 刻度上标准差近似为常数(方差稳定);其二,对比值取对数使上调与下调对称——2 倍上调是 +1,2 倍下调是 −1,而原始比值分别是 2 与 0.5,不对称且难以直接平均。对双色阵列,习惯上把每个点的红绿通道强度 R 与 G 转换为一对坐标:
为什么以 2 为底。以 2 为底的对数使「倍数」与「数值」一一对应:±1 即 ±2 倍,±2 即 ±4 倍,±3 即 ±8 倍;文献中「2 倍变化阈值」即 |log₂FC| ≥ 1。换底只差一个常数因子,不改变任何检验结果,选择 log₂ 纯粹为了读数的直观。需要警惕的是相反方向的换算习惯:log₂FC = −1 不是「下调 2 倍」而是「下调到一半」,报告时应写明「下调 50%」或「变化为 0.5 倍」,避免歧义。
4.4.2 归一化方法的谱系
归一化的共同前提是一个近乎哲学的假设:绝大多数基因不发生差异表达。在此假设下,点云整体偏离零线的部分应归咎于技术偏差而非生物学,可以安全扣除。最简单的实现是全局中位数归一化:把一张芯片(或一个通道)内全部 M 值的中位数平移到 0。它隐含着「偏倚与强度无关」的假定——一个全局常数加性偏移。上一小节已经说明这一假定常常不成立:染料偏倚在低强度端最强,随 A 增大而衰减,是强度依赖的非线性偏倚。此时全局平移会校正过度与校正不足并存:低强度端仍残留正偏,高强度端反被压成负偏。
校正强度依赖偏倚的标准做法是局部加权回归(locally weighted scatterplot smoothing, LOWESS/loess):在 M-A 散点图上,以每个点为中心取一个滑动窗口,对窗口内的点做加权多项式回归(离中心越近权重越大,离群点降权),得到拟合曲线 M̂(A);逐点计算残差 M′ = M − M̂(A),即完成校正(Yang et al., 2002)。LOWESS 不预设曲线形状,因而能追踪任意形态的强度依赖偏倚。对点样阵列可按打印头分组分别拟合(print-tip LOWESS),把打印针效应一并吸收;片间还可再做一次尺度缩放,使各张芯片的 M 分布具有一致的离散程度。图 4.4-1 给出校正前后的对照。
与 LOWESS「校正均值偏倚」的思路互补的是方差稳定变换(variance stabilizing transformation)一族的 VSN 方法:它以参数化模型同时描述均值—方差关系并施加变换(如双曲反正弦 arcsinh),在低强度端行为类似 log、在高强度端趋近线性,把校正与方差稳定一步完成。单色寡核苷酸阵列(Affymetrix 平台)则发展出另一套流水线,其比较发生在芯片之间,归一化的对象是各芯片的整个强度分布:
RMA:背景校正、归一化与探针组汇总的三段流水线。RMA(Robust Multi-array Average)把单色阵列的预处理组织为三段(Irizarry et al., 2003)。第一段,背景校正:不依赖 MM 探针,而以「指数信号 + 正态噪声」的卷积模型从 PM 强度分布中反卷积出真实信号,避免 MM 自身携带交叉杂交信号的问题。第二段,归一化:采用分位数归一化(quantile normalization)——把各芯片的强度排序后,强制每个分位点上的取值在所有芯片间一致(以该分位上的平均值为准),使全部芯片的强度分布完全相同(Bolstad et al., 2003)。第三段,汇总:对每个基因的探针组拟合加性线性模型(探针亲和效应 + 芯片表达值),以中位数打磨(median polish)稳健地估计各芯片上的 log₂ 表达值。三段各有分工:第一段决定低强度的行为,第二段消除片间分布差异,第三段把十余条探针压缩为一个稳健的基因级读数。
MAS 5.0(Affymetrix 官方,2001 年前后)
背景:PM − MM 差值扣除非特异信号;归一化:全局缩放,把各芯片的信号均值( trimmed mean)缩放到同一目标值;汇总:单芯片独立运行,以一步 Tukey biweight 加权平均把探针对合并为信号值;刻度:原始(非 log)刻度。特点是不依赖其他芯片、计算简单,但 MM 可能带入噪声,且单芯片估计易受个别探针影响。
RMA(Irizarry et al., 2003)
背景:基于分布的卷积模型,弃用 MM;归一化:分位数归一化,对齐全部芯片的整条分布;汇总:多芯片联合的探针级线性模型(多芯片模型思想:同一探针的亲和效应在所有芯片间共享,一并估计);刻度:log₂。比较研究表明其在重复性(方差)上占优、对低丰度基因的偏倚更小,代价是压缩了部分高强度端的动态范围。
「多数基因不变」假设失效的情形。全局中位数、LOWESS 与分位数归一化全都建立在「绝大多数基因不差异」之上。当真实生物学造成多数基因同向变化时——例如药物全局抑制转录、比较两种代谢截然不同的组织——归一化会把真实的全局位移误当作技术偏差扣除,甚至把「全部上调」变成「一半上调一半下调」。此类实验应引入外源 spike-in 对照或一组假定不变的看家基因作为标尺,或采用不依赖该假设的锚定策略。报告结果时应说明所用的归一化假设,让读者能够判断它是否与生物学情境相容。
习题 4.4-1
某双色芯片上一个基因点扣除背景后 R(Cy5)= 4096、G(Cy3)= 1024。(1) 计算该点的 M 与 A;(2) 设全片 M 值的中位数为 +0.4,写出全局中位数归一化后该点的 M′,并换算为倍数变化;(3) 若 LOWESS 在该点强度处拟合值 M̂(A) = 0.55,比较两种方法给出的校正结果,说明何时二者会有实质差别。
参考解答(1) M = log₂(4096/1024) = log₂4 = 2;A = ½log₂(4096×1024) = ½·log₂(2²²) = 11。(2) M′ = 2 − 0.4 = 1.6,对应 21.6 ≈ 3.0 倍上调。(3) LOWESS 校正后 M′ = 2 − 0.55 = 1.45,约 2.7 倍。当偏倚与强度无关(M̂(A) 恒等于中位数)时二者相同;当偏倚随强度变化时,全局中位数在低强度端校正不足、在高强度端校正过度,只有局部回归能逐点跟踪——这正是图 4.4-1 左图低强度端上翘所展示的情形。
4.4.3 差异表达的统计框架
归一化之后的表达矩阵(行 = 基因,列 = 样本)进入检验环节。最朴素的办法是对每个基因分别做双样本 t 检验:以两组均值之差除以合并标准误。它的脆弱之处在于方差估计不稳:每组只有 3 个生物学重复时,样本方差只有 4 个自由度,抽样波动很大;偶尔出现的极小样本方差会制造出巨大的 t 值,把噪声基因推上显著列表。换言之,小样本下不仅功效低,假阳性也集中出现在「碰巧方差小」的基因上——这些基因的生物学特征(如低表达、探针质量差)与显著性混杂,形成系统性偏差。
现代做法是把一次实验的全部因素写进一个线性模型统一估计:对基因 g,样本 j 的表达值 ygj = xjTβg + εgj,其中 xj 是设计矩阵的第 j 行——分组、染料、批次、个体等因素都以 0/1 协变量的形式编码在内,关心的对比(如处理 − 对照)表现为参数向量 βg 的一个线性组合(contrast)。与逐对 t 检验相比,线性模型能在一个模型内消化复杂设计(配对、区组、时间进程、2×2 因子),并直接检验交互项。经典的方差分析(ANOVA)分解是同一思想的加性形式:把表达值拆解为基因效应、样本(处理)效应、染料效应、阵列效应与基因×处理交互项之和,其中基因×处理交互项正是「这个基因是否响应处理」的度量;批次与个体作为额外因子进入分解后,其解释方差被显式剥离,不再污染差异估计(Gibson & Muse, 2009)。
线性模型解决了均值部分的参数化,方差部分的不稳则由经验贝叶斯收缩(empirical Bayes shrinkage)解决——这是 limma 框架的核心(Smyth, 2004)。其直觉是:一万个基因各有一份带 4 个自由度的方差估计,但它们共享同一个「方差总体」;可以把全基因组估计出的方差分布作为先验,将每个基因自己的方差向这个先验「收缩」,得到更稳定的后验方差,再构造检验统计量:
公式 (4.4-2) 的代价与收益都值得强调。收益是每个基因的方差都不再孤军奋战——哪怕只有两三个重复,只要全基因组提供几千份方差信息,检验就相当稳健,这使 limma 成为微阵列时代事实上的标准。代价是引入了「基因间方差同属一个分布族」的假设:若真实存在一小簇方差天然极小的基因(如高度稳定的看家基因),收缩会略微高估它们的方差、低估其显著性——一个可以接受、但应当知道的偏倚方向。同一时期发展的 SAM 方法以「接近零的阈值 + 重复重排」控制假发现率,是解决多重检验问题的另一条著名路径(Tusher et al., 2001);调节 t 与 SAM 的比较研究表明两者在多数场景下结论相近,前者在建模灵活性上更强。
4.4.4 多重检验与假发现率
做完一万个基因的检验,接下来面对的问题是:如何读出这张 p 值清单。单基因时代 p < 0.05 的惯例在基因组尺度上彻底失效。做一个简单的算术:若对 10⁴ 个基因各做一次 α = 0.05 的检验,且所有基因实际上都不差异,则每个基因以 5% 的概率越线,期望出现 10⁴ × 0.05 = 500 个「显著」基因——全部为假阳性。这 500 个噪声基因与真实的差异基因混在同一张列表里,裸 p 值无法区分它们。控制这一问题的第一代标准是族错误率(family-wise error rate, FWER)——「至少犯一次假阳性错误」的概率;邦费罗尼校正把每个检验的阈值收紧为 α/m,便可将 FWER 压在 α 以下。但 m = 10⁴ 意味着阈值是 5×10⁻⁶:只有效应极强、方差极小的基因才可能通过,大量真基因被一同牺牲。对以「筛出候选清单、后续逐一验证」为目的的探索性筛选,更合适的误差度量是假发现率(false discovery rate, FDR)(Benjamini & Hochberg, 1995):
FDR 与 FWER 的层级关系。FWER 控制「清单中至少有一个假阳性」的概率,FDR 控制清单中假阳性的比例。由于 V ≥ 1 时 V/R ≤ 1,恒有 FDR ≤ FWER:控制 FWER 的方法(如邦费罗尼)自动控制 FDR,反之不然。当真信号较多(m₀/m 不接近 1)时,FDR 框容许同时检出更多基因——它允许错误随发现数量按比例增长,而不是要求「零容忍」。确认型研究(临床诊断标志物的最终确认)宜用 FWER;探索型筛选(机制研究的第一轮普查)宜用 FDR。
Benjamini–Hochberg(BH)步进程序给出了一条在任意 p 值组合下把 FDR 控制在 q 以内的实用规则:
BH 程序的手工执行(m = 8,q = 0.05)。设 8 个基因的 p 值升序为 0.001、0.008、0.012、0.019、0.028、0.045、0.200、0.610。阈值 (k/m)q = k × 0.00625:
- 逐位比较:k = 1:0.001 ≤ 0.00625,通过;k = 2:0.008 ≤ 0.0125,通过;k = 3:0.012 ≤ 0.01875,通过;k = 4:0.019 ≤ 0.025,通过;k = 5:0.028 ≤ 0.03125,通过;k = 6:0.045 > 0.0375,失败;k = 7、8 亦失败。
- 最大的通过秩 k* = 5:拒绝前 5 个原假设,报告「5 个差异基因,FDR ≤ 5%」——该清单中假阳性的期望个数不超过约 0.25。
- 对照邦费罗尼:阈值 α/m = 0.00625,只有第 1 个基因(p = 0.001)保留。同一份数据,FWER 框报 1 个,FDR 框报 5 个——保守性的差别一目了然。
注意 BH 的一个反直觉之处:被判显著的基因并不要求各自的 p 值都小于阈值(第 5 位的 0.028 大于 0.00625),因为判定以「秩」为单位——这正是「控制清单比例」而非「控制单个错误」的体现。
BH 程序在所有原假设为真时把 FDR 严控在 q 以下,但当真信号占比较高时它会明显过保守——分母 m 中包含了大量不可能为真的检验。Storey(2002)的q 值(q-value)从数据中估计真原假设的比例 π₀ 再以 m·π₀ 替换 m,在保持 FDR 控制的同时提高功效;q 值本身定义为「把该基因及更显著基因全部收入清单时所能达到的最小 FDR」,可视为多重检验校正后的 p 值,实践中直接报告每个基因的 q 值并按 q ≤ 0.05 取清单即可。无论采用哪种变体,共同的报告纪律是:给 q 值而非裸 p 值,给效应量而非仅给显著性。
习题 4.4-2
某微阵列实验检验了 8 个候选基因,p 值升序为 0.003、0.011、0.018、0.032、0.048、0.073、0.155、0.402。取 q = 0.05:(1) 写出 BH 程序每一步的比较并确定 k*,报告显著基因数;(2) 计算邦费罗尼阈值下的显著基因数;(3) 若把第 4、5 位基因也强行收入清单,清单的假发现率性质是否仍有保证。
参考解答(1) 阈值 k × 0.00625 依次为 0.00625、0.0125、0.01875、0.025、0.03125、0.0375、0.04375、0.05。逐位比较:k = 1(0.003 ≤ 0.00625)、k = 2(0.011 ≤ 0.0125)、k = 3(0.018 ≤ 0.01875)通过;k = 4(0.032 > 0.025)起全部失败。k* = 3,报告 3 个显著基因,FDR ≤ 5%。(2) 邦费罗尼阈值 0.05/8 = 0.00625,仅第 1 个基因(0.003)显著。(3) 不能。BH 的 FDR 保证只对「以最大通过秩 k* 为界」的清单成立;把未通过秩的基因补入,等于使用更小的 k 所不支持的更宽阈值,FDR 上界随之失效。这也说明 BH 报告的清单是「前 k* 个」这个整体,不能随意增删。
4.4.5 结果呈现:火山图、效应量与富集预告
检验完成后,把每个基因的效应大小(log₂ 折叠变化)作为横轴、统计显著性(−log₁₀ p 或 −log₁₀ q)作为纵轴作图,即得表达分析最常用的图形——火山图(volcano plot)。多数基因聚在底部山脚,真实差异基因冲向两上角。图上的两条阈值线(竖线 |log₂FC| = 1、横线 FDR 5%)把平面切成几个语义不同的区域,解读时应同时使用两个维度:
火山图的价值正在于它把两个维度同时摆在眼前:p 值回答「变化可靠吗」,折叠变化回答「变化重要吗」。统计上极显著而倍数只有 1.05 的基因,与倍数达 8 倍但 p = 0.2 的基因,都不能直接进入结论——前者的效应量可能低于检测平台的技术重复性,后者多半是组内方差过大或个别离群样本所致。由此可以整理出差异表达结果的报告规范:对每个报告的基因给出点估计(log₂FC)与置信区间(或后验标准误),显著性一律用校正后的 q 值;对全表给出检验总数、采用的校正方法与阈值;缩略语与预处理参数(如 LOWESS 的窗口宽度、RMA 的版本)随文给出,使他人可以复现整条链路。置信区间的宽度本身就是重要信息:一个 FC = 2.0、95% 置信区间 [1.2, 3.3] 的基因,其可信程度远低于区间 [1.8, 2.2] 的基因,尽管点估计相同。
最后需要对下游分析做出预告。单个基因的清单只是第一步:差异基因往往数十上百个,逐条罗列难以形成机制图景。标准做法是把清单交给功能富集分析——检验差异基因是否在某个功能类别(如基因本体 GO 的分子功能、生物过程、细胞组分)中比例过高。其统计骨架正是 2.5 节注释部分与概率论中的超几何检验(hypergeometric test):从 N 个基因的「总体」中抽出 n 个差异基因,某类别(共 K 个成员)中被抽中 k 个以上的概率。富集分析将作为功能注释的统计延伸在 2.5 节基因组注释的基础上于后续章节(如 6.4 节的多组学整合)系统展开;此处只需记住:富集分析同样面对多重检验(数千个类别),FDR 框架在这里再度登场。
习题 4.4-3
在某火山图上:基因 X 位于 log₂FC = +2.2、−log₁₀p = 0.7 处;基因 Y 位于 log₂FC = +0.15、−log₁₀p = 7.8 处。设显著性阈值为 −log₁₀p ≥ 2.6,倍数阈值为 |log₂FC| ≥ 1。(1) 判断两基因各落在哪个区域;(2) 各给出一种最可能的技术或生物学原因;(3) 对两基因分别提出下一步对策。
参考解答(1) X 落在右侧「倍数大而不显著」区(越过竖线但低于横线);Y 落在顶部中央「显著但倍数小」区。(2) X:组内方差大——重复少、个别样本离群、批次效应未充分建模,或该基因本底表达极低导致测量噪声大;Y:样本量大或测量方差极小,使微小的真实(或系统性技术)变化达到显著,例如轻微的组成型偏倚。(3) X:增加独立生物学重复、检查离群样本与批次设计、在模型中加入协变量后重新检验,并以 qPCR 复核;在重复不足被排除之前不应仅凭倍数宣称差异。Y:报告效应量与置信区间,考察该方向上微小变化是否在多个同通路基因中协同出现(富集检验),或将其归为「统计学显著但生物学意义待定」的一类。
4.4.6 可重复性实践
微阵列分析链条长、可调参数多,同一份原始数据经不同预处理可能得出不同清单——这一观察在 2000 年代引发了领域内对可重复性的系统反思,也留下了至今适用的实践规范。第一层是分析与设计的预先声明:在看到数据之前确定分组定义、比较组合、将使用的归一化方法与检验框架,即「预注册」或分析计划存档;事后挑选「效果最好的组合」会以不可量化的方式抬高假阳性。第二层是代码与数据的存档:原始图像、强度矩阵与处理脚本一并存入公共数据库(GEO、ArrayExpress),并以 MIAME(关于微阵列实验的最小信息量)标准记录样本、处理与阵列的元数据;只有原始数据可及,他人才可能用不同假设重走整条链路。第三层是面向读者的诊断图自查,其中最有用的是 p 值分布:在「多数基因无差异」的前提下,未校正 p 值的直方图应大体均匀分布在 [0, 1] 上、并在接近 0 的一端因真信号而隆起;若分布整体右偏(大量小 p 值堆积在 0 附近之外)或呈异常驼峰,提示归一化不足、批次效应或离群样本。相应的分位数—分位数图(Q-Q 图)把观测 p 值的分位数与均匀分布的期望分位数对照,理想情形是沿对角线的直线在右端抬升——偏离形态可据此定位问题环节。
第四层是独立验证。统计框架再精巧,也只是「与模型一致」,不等于「与生物学一致」。惯例的做法分两级:对筛选出的少量关键基因,用定量 PCR(4.1 节的 ΔΔCt 方法)在同批样本上验证方向与幅度;对整个结论(如一个表达签名能否区分表型),在独立队列上检验——不同批次、不同平台乃至不同实验室的样本。验证通过的关键基因进入后续机制研究,验证不通过则回溯诊断图与原始数据。需要指出,「用同一份微阵列数据再算一遍」不构成独立验证:共同的系统偏差会被一同复制。真正的独立要求测量过程与样本来源至少其一重新开始。本节的统计链路至此闭环:设计(4.3 节)限定噪声结构,归一化剥离技术偏差,线性模型与收缩稳定推断,FDR 校正清单污染,而独立验证为整个链条提供外部锚点。
关键术语
- 归一化 (normalization)
- 在「多数基因不差异」假设下,扣除通道间与芯片间系统偏差、把各样本调整到同一标尺的数据预处理步骤。
- 染料偏倚 (dye bias)
- Cy3 与 Cy5 标记效率及检测响应不同造成的通道间系统偏倚,常随强度非线性变化,低强度端最重。
- M-A 图 (M-A plot)
- 以 A = ½log₂(RG) 为横轴、M = log₂(R/G) 为纵轴的双色阵列散点图,用于诊断与校正强度依赖偏倚。
- 局部加权回归 (LOWESS/loess)
- 滑动窗口内做加权多项式回归的非参数平滑方法;在 M-A 图上拟合偏差曲线 M̂(A) 后逐点扣除。
- 分位数归一化 (quantile normalization)
- 强制各芯片在每个分位点取相同数值,使全部样本的强度分布完全一致;单色阵列标准步骤。
- RMA (robust multi-array average)
- 单色阵列预处理流水线:卷积模型背景校正、分位数归一化与多芯片探针级线性模型汇总,输出 log₂ 表达值。
- 经验贝叶斯收缩 (empirical Bayes shrinkage)
- 以全基因组方差分布为先验,把各基因的样本方差向其收缩以稳定估计;limma 框架的核心。
- 调节 t 统计量 (moderated t statistic)
- 以收缩后的后验方差构造的 t 统计量,小样本下避免个别基因因方差碰巧极小而虚假显著。
- 假发现率 (false discovery rate, FDR)
- 显著基因清单中假阳性的期望比例 E[V/R];大规模筛选中取代族错误率的误差控制标准。
- 邦费罗尼校正 (Bonferroni correction)
- 以 α/m 为单检验阈值控制族错误率;最保守的多重校正,m 大时功效损失严重。
- q 值 (q-value)
- 某基因所能达到的最小假发现率,即校正后的显著性度量;估计真原假设比例 π₀ 后可提高功效。
- 火山图 (volcano plot)
- 以 log₂FC 为横轴、−log₁₀p(或 q)为纵轴的差异结果总览图,双阈值划分出语义不同的区域。
参考文献与延伸阅读
- Gibson G, Muse SV. 2009. A Primer of Genome Science, 3rd ed. Sunderland (MA): Sinauer Associates. (Chapter 4)
- Yang YH, Dudoit S, Luu P, Lin DM, Peng V, Ngai J, Speed TP. 2002. Normalization for cDNA microarray data: a robust composite method addressing single and multiple slide systematic variation. Nucleic Acids Research 30(4): e15.
- Smyth GK. 2004. Linear models and empirical Bayes methods for assessing differential expression in microarray experiments. Statistical Applications in Genetics and Molecular Biology 3(1): Article 3.
- Irizarry RA, Hobbs B, Collin F, et al. 2003. Exploration, normalization, and summaries of high density oligonucleotide array probe level data. Biostatistics 4(2): 249–264.
- Bolstad BM, Irizarry RA, Astrand M, Speed TP. 2003. A comparison of normalization methods for high density oligonucleotide array data based on variance and bias. Bioinformatics 19(2): 185–193.
- Benjamini Y, Hochberg Y. 1995. Controlling the false discovery rate: a practical and powerful approach to multiple testing. Journal of the Royal Statistical Society: Series B 57(1): 289–300.
- Storey JD. 2002. A direct approach to false discovery rates. Journal of the Royal Statistical Society: Series B 64(3): 479–498.
- Tusher VG, Tibshirani R, Chu G. 2001. Significance analysis of microarrays applied to the ionizing radiation response. Proceedings of the National Academy of Sciences USA 98(9): 5116–5121.