Fisher检验是什么,它的适用条件是什么?
Fisher检验是什么?什么情况下使用Fisher精确检验?本文详细介绍Fisher检验的原理、适用条件、理论频数要求、与卡方检验的区别、SPSS应用及论文写作规范,帮助科研人员正确选择统计分析方法。
更新于2026年7月28日

在医学、生命科学和社会科学研究中,我们经常需要比较两组或多组分类数据是否存在差异。例如,不同治疗方案的治愈率是否不同、男性和女性患病率是否存在差异、某种基因突变是否与疾病发生相关等。这类问题通常会使用卡方检验(Chi-square Test)进行分析。
然而,当样本量较小或列联表中的某些单元格数据过少时,卡方检验的结果可能并不可靠。这时,统计软件往往会同时给出另一项结果——Fisher精确检验(Fisher's Exact Test)。
那么,Fisher检验究竟是什么?它适用于哪些情况?什么时候应该选择Fisher检验,而不是卡方检验?本文将详细介绍Fisher检验的原理、适用条件以及实际应用,帮助科研人员正确选择统计分析方法。
什么是Fisher检验?
Fisher检验(Fisher's Exact Test)是一种用于分析两个分类变量是否存在关联的统计方法,由英国著名统计学家 Ronald A. Fisher 于1934年提出,因此也称为Fisher精确检验。
与卡方检验一样,Fisher检验主要用于分析列联表中的分类数据,例如:

研究者希望判断实验组和对照组的阳性率是否存在统计学差异。
对于样本量较大的数据,通常采用卡方检验即可;但如果样本量较小,或者某些单元格中的观察值非常少,卡方检验得到的P值可能产生较大误差,此时Fisher检验能够直接计算精确P值(Exact P Value),因此结果更加可靠。
简单来说,Fisher检验最大的特点就是不依赖近似计算,而是直接计算各种可能结果出现的概率,因此特别适合小样本研究。
Fisher检验的基本原理
虽然Fisher检验和卡方检验都用于分析分类变量,但两者的计算方法完全不同。
卡方检验是基于卡方分布(Chi-square Distribution)进行近似计算,因此只有在样本量足够大的情况下,这种近似才比较准确。
而Fisher检验则采用超几何分布(Hypergeometric Distribution),直接计算所有可能列联表出现的概率,并最终得到精确的P值,因此无需满足卡方检验对样本量和理论频数的要求。
正因为如此,当样本量较小时,Fisher检验通常比卡方检验更加准确;而随着样本量不断增加,两种方法得到的P值会越来越接近,因此大样本研究一般仍优先采用卡方检验。
Fisher检验的适用条件
Fisher检验并不是所有情况下都需要使用,它主要适用于以下几种情况。
1. 数据属于分类变量
Fisher检验只能用于分类数据(Categorical Data)。
例如:
- 男性/女性
- 阳性/阴性
- 吸烟/不吸烟
- 患病/未患病
- 治愈/未治愈
如果数据属于连续变量,例如年龄、身高、血压、BMI或实验测量值,则不能使用Fisher检验,而应选择t检验、方差分析(ANOVA)或非参数检验等方法。
2. 数据能够组成列联表
Fisher检验要求数据能够整理为列联表(Contingency Table)。
最经典的是2×2四格表:

虽然现代统计软件已经支持2×3、3×3甚至更大的列联表进行Fisher检验,但随着表格维度增加,计算复杂度也会迅速提高。因此,在实际科研中,Fisher检验最常用于2×2列联表分析。
3. 样本量较小
Fisher检验最典型的应用场景就是小样本研究。
例如:
- 罕见病研究
- 动物实验
- 预实验(Pilot Study)
- 临床早期试验
这些研究往往只有十几例甚至几例样本,此时卡方检验由于依赖近似计算,容易产生偏差,而Fisher检验能够提供更准确的统计结果。
不过,需要注意的是,是否采用Fisher检验并不是仅由总样本量决定,更重要的是理论频数是否满足卡方检验的前提条件。
4. 理论频数不满足卡方检验要求
这是判断是否采用Fisher检验最重要的标准。
根据多数统计教材及医学统计学规范,当列联表出现以下情况时,应优先考虑Fisher检验:
- 超过20%的单元格理论频数(Expected Count)小于5;
- 或任意一个单元格理论频数小于1。
这是因为卡方检验建立在大样本近似理论基础上,当理论频数过小时,其P值可能出现较大误差。
因此,许多SCI论文和医学期刊都会建议:当卡方检验的理论频数条件不能满足时,应采用Fisher精确检验。
Fisher检验和卡方检验有什么区别?
很多科研人员都会问:既然Fisher检验更加准确,是不是所有研究都应该使用Fisher检验?
答案是否定的。
两种方法各有适用范围。

简单来说:
- 样本较小、理论频数较低,优先选择Fisher检验;
- 样本较大且满足卡方检验前提时,采用Pearson卡方检验即可。
对于样本量非常大的研究,两种方法得到的结果通常几乎一致,因此没有必要为了“更精确”而强行使用Fisher检验。
SPSS什么时候需要使用Fisher检验?
在SPSS中进行交叉表分析(Crosstabs)时,如果勾选**Exact(精确检验)**选项,软件就会输出Fisher检验结果。
很多时候,SPSS输出中会同时出现:
- Pearson Chi-Square
- Continuity Correction(连续性校正)
- Likelihood Ratio(似然比检验)
- Fisher's Exact Test
对于理论频数不足的数据,研究者通常应报告Fisher's Exact Test对应的精确P值,而不是Pearson卡方检验结果。
如果数据满足卡方检验条件,则一般报告Pearson Chi-Square即可。
常见问题
1. Fisher检验只能用于2×2列联表吗?
不是。现代统计软件已经支持更高维度的列联表进行Fisher检验,但由于计算复杂度较高,其最经典、最常见的应用仍然是2×2四格表。
2. 样本量小一定要使用Fisher检验吗?
不一定。真正决定是否采用Fisher检验的是理论频数是否满足卡方检验的要求,而不仅仅是总样本量。
3. Fisher检验一定比卡方检验更准确吗?
对于小样本数据,Fisher检验能够计算精确P值,因此更加可靠;对于大样本数据,两种方法得到的结果通常非常接近,并不存在Fisher检验始终优于卡方检验的情况。
