如何在 python 中执行 fisher 精确检验


Fisher 精确检验用于确定两个 calcategories 变量之间是否存在显着关联。

当 2 × 2 表中的一个或多个单元格计数小于 5 时,它通常用作独立性卡方检验的替代方法。

本教程介绍如何在 Python 中执行 Fisher 精确检验。

示例:Python 中的 Fisher 精确检验

假设我们想知道性别是否与特定大学对政党的偏好有关。

为了探究这一点,我们随机调查了校园内的 25 名学生。按性别划分的民主党或共和党学生人数如下表所示:

民主党人 共和党人
女性 8 4
男性 4 9

为了确定性别和政党偏好之间是否存在统计上显着的关联,我们可以使用以下步骤在Python中执行Fisher精确检验:

第 1 步:创建数据。

首先,我们将创建一个表来保存数据:

 data = [[8, 4],
         [4, 9]]

步骤 2:执行 Fisher 精确检验。

接下来,我们可以使用 SciPy 库中的fisher_exact 函数执行 Fisher 精确测试,该函数使用以下语法:

Fisher_exact(表,替代=’两张脸’)

金子:

  • 表: 2×2 列联表
  • 替代:定义替代假设。默认为“双面”,但您也可以选择“更少”或“更大”进行单面测试。

下面的代码展示了如何在我们的具体示例中使用该函数:

 import scipy.stats as stats

print(stats.fisher_exact(data))

(4.5, 0.1152)

用于测试的 p 值为0.1152

Fisher 精确检验使用以下原假设和备择假设:

  • H 0 :(零假设)两个变量是独立的。
  • H 1 :(替代假设)两个变量不是独立的。

由于该 p 值不小于 0.05,因此我们不拒绝原假设。

因此,我们没有足够的证据表明性别和政党偏好之间存在显着关联。

换句话说,性别和政党偏好是独立的。

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注