类别计数只能取整数,原假设为每种可行结果分配概率。样本较大时,连续参照分布可近似这些概率;样本较小时,可能结果之间的间隔和概率的不对称仍然明显。精确检验直接在这个离散空间中累加概率,评价观察结果的极端程度。

Fisher 检验的关键在于条件化:给定列联表边际以后,相等成功率模型中的共同成功概率被消去,剩余计数服从超几何分布。“精确”指这一参照分布按离散概率计算,估计的不确定性以及研究设计和数据偏差仍然存在。

二项与超几何分布给出了此处的离散概率,假设检验说明尾概率的检验含义;与卡方检验比较,可以看出直接计算和渐近近似的联系。

固定边际下的条件分布

设两个独立组的二分类频数如下:

组别成功未成功合计
A
B
合计

在两组成功概率相等、优势比为 1 的原假设下,Fisher 检验以观察到的行列边际为条件。设 A 组成功人数为 。边际一旦给定, 就决定其余三个格子的次数,条件概率为

这个概率由组合计数得到: 个个体中有 个成功标签,分给 A 组的 个标签中,选择哪些来自成功类别、哪些来自未成功类别。分母计算全部可行选择,分子计算其中成功标签数恰好为指定次数的选择,两者之比就是超几何概率。成功人数的可行范围为

两组共享的成功概率决定总成功数如何变化,却不再决定给定总成功数后成功标签如何分配到两组。因此它从条件分布中消失,未知的干扰参数也不再妨碍概率计算。行总量常由设计固定;列总量即使未在设计中固定,仍可在抽样后作为条件。实际抽样设计和检验采用的条件分布属于两个不同层面。

小样本超几何概率的计算

用一份独立个体的虚构小样本计算这些概率。这份资料与贯穿教程的 400 人案例相互独立,也没有前后配对关系:

组别成功未成功合计
A055
B437
合计4812

原假设给出 。全部可行标签分配数为 ,成功人数只能为 ;各个次数对应的分配数及概率如下。

组合数 条件概率
0560.070707
12800.353535
23360.424242
31120.141414
480.010101

若研究前的备择为“A 成功率更低”,观察值 位于分布的左侧,单侧尾概率为 。它是在原假设成立时,观察到这个方向同样或更加极端结果的概率。“A 更低的概率为 ”是对参数作概率判断,与此处的抽样尾概率含义不同。

双侧精确概率的定义

双侧检验需要规定两种方向的结果如何比较极端程度。连续对称分布常有自然的镜像,但离散不对称分布中,左侧观察值在右侧未必有等概率的对应点。这使双侧精确 值存在多种定义,检验名称与其极端性规则共同决定数值。

SciPy fisher_exact 对 表采用双侧概率排序:条件概率越小的表被视为越极端,把概率不大于观察表概率的所有可行表的概率相加,得到

本例观察表的概率为 。可行结果中, 的概率 与 的概率 不超过这个值,故双侧概率为

相对地,直接把单侧概率乘二会得到 ,与概率排序结果不同。某些对称表中,两种计算恰好一致;本例的不对称性则显出了区别。双侧概率来自整组符合极端性规则的表,观察表自身的概率只是确定这组表的标准。

离散结果的尾概率按可行计数逐级跳跃, 值的可取值也具有离散性。指定 后,实际拒绝概率可能低于该水平,这就是小样本精确检验常见的保守性。mid- 通常减去部分观察表概率,以减轻保守性;这种改变也使原有严格的有限样本错误率保证一般不再保持,它属于另一种检验定义。

精确检验与渐近检验的比较

贯穿案例仍是独立个体随机分配的虚构实验:对照 成功、干预 成功。各格期望频数足够大,卡方近似也适用。按对照、干预排列两行,SciPy 双侧 Fisher 得到 ,未校正 Pearson 得到 。前者保留给定边际后的整数概率,后者使用连续渐近分布,有限样本中的数值差异由两种参照结构产生。

优势比带有比较方向。按行“对照、干预”、列“成功、未成功”排列时,交叉乘积得到对照相对于干预的优势比:

干预相对于对照的优势比则为倒数 。交换两行只是把同一组条件概率重新排列,双侧 因而保持相同;单侧尾部和 OR 方向则随比较方向改变。

概率排序可用 scipy.stats.fisher_exact(((0, 5), (4, 3)), alternative="two-sided") 计算,结果约为 0.080808。其他软件可能采用不同双侧定义或 OR 估计,方法与版本也因此构成结果含义的一部分。

零格与边界估计

A 组观察到 0 个成功,交叉乘积 OR 为 0, 没有有限值;常规 Wald 标准误含 ,因而失去定义。超几何分布却允许零频数,其概率仍然有限。检验的参照概率与估计量的局部正态近似分属不同问题,零格可以同时保持前者有效、使后者失效。

在 5 人中未观察到事件,仍与许多正的总体成功概率相容:只要概率为正但不太高,全部未成功也可能发生。这种边界样本适合用二项区间,或 OR 的精确、轮廓似然及惩罚方法表达不确定性。某些精确 OR 区间以 0 或无穷为端点,反映样本对相应参数方向的约束较弱。

向每格加 0.5 会把零格移离边界,从而产生有限的近似估计。它是对计算的连续性修正,修正后的次数与原始频数不同。极小样本中,这些附加量相对原次数较大,所以可能明显影响估计;有限数值所依赖的是修正规则,而非新增的观察信息。

若把组别放入 Logistic 模型,某组全失败会导致至少准完全分离:沿着使该组成功概率更小的参数方向,似然可以持续改善,普通极大似然系数可能趋于无穷。多个变量的组合也可能形成同样结构,见Logistic 回归。Firth 惩罚或合理的贝叶斯先验可提供有限估计,其有限性来自增加的估计约束;不同约束对稀疏数据的影响也构成敏感性分析的内容。

精确方法的适用范围

Fisher 条件分布以独立个体及相应抽样结构为基础。同一个人的两次结果保存了配对依赖,聚类个体也可能共同变化;这些联合概率通常不由普通超几何分布描述。相应的配对精确方法或体现聚类结构的方法,使用的是另一套与资料相符的参照机制。

两个独立二项样本还可采用 Barnard、Boschloo 等无条件精确检验,条件化程度不同,功效也可能不同。更大的列联表往往有很多可行表,完整枚举代价较高,蒙特卡洛方法可近似相应概率,模拟次数决定其数值误差。随机分配实验则可依据实际分配机制建立随机化分布;只有设计允许的标签交换才属于该分布的可行结果。

一个 值的错误率含义以确定的检验规则为基础。若先比较多个结果,再挑选最小者,实际使用的已是另一种数据依赖规则。研究设计、原假设、预先计划和近似质量给出方法选择的依据;效应量及其区间仍用于描述差异大小和参数不确定性。

条件概率与参数不确定性

条件化把共同成功概率从零假设下的参照分布中消去,留下有限个可行表及其超几何概率。单侧或双侧检验各自规定其中哪些表计入尾部,概率排序因此是定义的一部分。分布的离散性则决定尾概率的跳跃和拒绝概率的保守程度。

参数估计仍依赖观察表提供的信息。零格对精确检验和对数 OR 区间的影响不同,配对与分层也会改变联合结构及相应参照分布。这些方法的进一步讨论见 参考教材与开放课程。

习题

  1. 上面 12 人例子为什么 不可能?为什么双侧需要包含 ,却不包含 ?
  2. 若一个软件给出双侧 ,另一个给出 ,应先检查什么?
  3. 5 人中没有事件,能否认定总体事件概率为 0?能否直接用对数 OR 的 Wald 区间?
  4. 20 人各做治疗前后测量,整理出一个有零格的 表。Fisher 是默认正确的选择吗?

参考解答

  1. 全部 12 人只有 4 个成功标签,所以 A 组最多包含 4 个。概率排序以观察表的 为界; 的 更小,应纳入, 的 更大,不纳入。
  2. 先核对输入表、备择方向、双侧定义与软件文档。这里两个数字可对应“双倍单侧”与“概率排序”;不能仅凭数值不同认定计算错误。
  3. 不能。零观察事件仍有抽样不确定性。对数 OR 以及含 的 Wald 公式失效,应使用适合边界的估计与区间方法。
  4. 不是。前后资料配对,独立个体的条件分布不适合。二分类前后比较应考察不一致配对,并用 McNemar 的精确二项版本等方法。

上一篇:19 卡方检验 · 下一篇:21 配对、分层与辛普森悖论 · 课程总览

相关概念:p值与错误率 · 概率与似然。