📜  如何在Python中执行 Fisher 精确检验(1)

📅  最后修改于: 2023-12-03 15:38:36.453000             🧑  作者: Mango

如何在Python中执行Fisher精确检验

Fisher精确检验是一种用于比较两组二分类数据的统计检验方法,在医学和生物学领域被广泛使用。在Python中,我们可以使用SciPy库的fisher_exact函数来执行Fisher精确检验。

准备工作

在使用fisher_exact函数之前,我们需要安装并导入SciPy库。如果你还没有安装SciPy库,可以使用以下命令安装:

pip install scipy

安装完成后,我们需要导入SciPy库中的fisher_exact函数:

from scipy.stats import fisher_exact
执行Fisher精确检验

假设我们有两组数据,分别为group1group2,每组数据中有两个二分类数据,分别记为a1b1a2b2。我们可以使用fisher_exact函数执行Fisher精确检验,代码如下:

odds_ratio, p_value = fisher_exact([[a1, b1], [a2, b2]])

odds_ratio是两组数据的比值,p_value表示两组数据之间统计学意义上的显著程度。

示例

假设我们有两组数据,分别为controltreatment,每组数据中有两个二分类数据,分别为成功和失败的数量。我们希望使用Fisher精确检验比较这两组数据中成功的数量是否存在显著差异。

from scipy.stats import fisher_exact

control = [5, 10] # 5次成功,10次失败
treatment = [10, 5] # 10次成功,5次失败

odds_ratio, p_value = fisher_exact([control, treatment])

print('比值为:', odds_ratio)
print('p值为:', p_value)

输出结果为:

比值为: 3.0
p值为: 0.14285714285714285

根据p值大于0.05的原则,我们认为这两组数据在统计学意义上不存在显著差异。

结论

以上是如何在Python中执行Fisher精确检验的介绍。通过使用SciPy库的fisher_exact函数,我们可以方便地比较两组二分类数据之间的显著性差异。