如何在 python 中执行卡方拟合优度检验
卡方拟合优度检验用于确定分类变量是否遵循假设分布。
本教程介绍如何在 Python 中执行卡方拟合优度检验。
示例:Python 中的卡方拟合优度检验
一位商店老板说,一周中每天都有相同数量的顾客来到他的商店。为了检验这个假设,研究人员记录了给定一周内进入商店的顾客数量,并发现以下结果:
- 周一: 50 位顾客
- 周二: 60 位顾客
- 周三: 40 位顾客
- 周四: 47 位顾客
- 周五: 53 位顾客
使用以下步骤在 Python 中执行卡方拟合优度检验,以确定数据是否与店主的说法一致。
第 1 步:创建数据。
首先,我们将创建两个表来包含每天观察到的和预期的客户数量:
expected = [50, 50, 50, 50, 50] observed = [50, 60, 40, 47, 53]
步骤 2:执行卡方拟合优度检验。
接下来,我们可以使用 SciPy 库中的卡方函数执行卡方拟合优度检验,该函数使用以下语法:
卡方(f_obs,f_exp)
金子:
- f_obs:观察到的计数的数组。
- f_exp:预期计数的数组。默认情况下,假定每个类别的可能性相同。
下面的代码展示了如何在我们的具体示例中使用该函数:
import scipy.stats as stats #perform Chi-Square Goodness of Fit Test stats.chisquare(f_obs=observed, f_exp=expected) (statistic=4.36, pvalue=0.35947)
卡方检验统计量为4.36 ,相应的 p 值为0.35947 。
请注意,p 值对应于具有 n-1 自由度 (dof) 的卡方值,其中 n 是不同类别的数量。在这种情况下,dof = 5-1 = 4。您可以使用卡方到 P 值计算器来确认与 dof = 4 的 X 2 = 4.36 对应的 p 值为0.35947 。
回想一下,卡方拟合优度检验使用以下原假设和备择假设:
- H 0 :(零假设)变量遵循假设分布。
- H 1 :(替代假设)变量不遵循假设分布。
由于 p 值 (0.35947) 不小于 0.05,因此我们无法拒绝原假设。这意味着我们没有足够的证据表明真实的顾客分布与店主报告的不同。