boschloo_exact#
- scipy.stats.boschloo_exact(table, alternative='two-sided', n=32)[源代码]#
对 2x2 列联表执行 Boschloo 精确检验。
- 参数:
- table整数数组形式
一个 2x2 列联表。元素应为非负整数。
- alternative{‘two-sided’, ‘less’, ‘greater’}, 可选
定义零假设和备择假设。默认值为“two-sided”。请参阅下面“说明”部分中的解释。
- nint, 可选
构建抽样方法时使用的采样点数。请注意,此参数将自动转换为下一个更高的 2 的幂,因为
scipy.stats.qmc.Sobol
用于选择采样点。默认值为 32。必须为正数。在大多数情况下,32 个点足以达到良好的精度。更多的点会带来性能成本。
- 返回值:
- berBoschlooExactResult
具有以下属性的结果对象。
- statisticfloat
Boschloo 检验中使用的统计量;即,费舍尔精确检验的 p 值。
- pvaluefloat
P 值,即在假设零假设为真的情况下,获得至少与实际观察到的分布一样极端的分的概率。
另请参阅
chi2_contingency
列联表中变量独立性的卡方检验。
fisher_exact
对 2x2 列联表进行费舍尔精确检验。
barnard_exact
巴纳德精确检验,它是 2x2 列联表比费舍尔精确检验更强大的替代方案。
说明
Boschloo 检验是一种精确检验,用于分析列联表。它检查两个分类变量的关联,并且是 2x2 列联表费舍尔精确检验的更强大的统一替代方案。
Boschloo 精确检验使用费舍尔精确检验的 p 值作为统计量,而 Boschloo 的 p 值是在零假设下观察到如此极端统计量值的概率。
让我们定义 \(X_0\) 一个 2x2 矩阵,表示观察到的样本,其中每列存储二项式实验,如下例所示。让我们还定义 \(p_1, p_2\) \(x_{11}\) 和 \(x_{12}\) 的理论二项式概率。当使用 Boschloo 精确检验时,我们可以断言三种不同的备择假设
\(H_0 : p_1=p_2\) 对 \(H_1 : p_1 < p_2\),其中 alternative = “less”
\(H_0 : p_1=p_2\) 对 \(H_1 : p_1 > p_2\),其中 alternative = “greater”
\(H_0 : p_1=p_2\) 对 \(H_1 : p_1 \neq p_2\),其中 alternative = “two-sided”(默认)
当零分布不对称时,计算双尾 p 值有多种约定。在这里,我们应用以下约定:双尾检验的 p 值是单尾检验的 p 值的最小值的两倍(截取为 1.0)。请注意,
fisher_exact
遵循不同的约定,因此对于给定的 table,当alternative='two-sided'
时,boschloo_exact
报告的统计量可能与fisher_exact
报告的 p 值不同。在 1.7.0 版本中添加。
参考文献
[1]R.D. Boschloo. “检验两个概率相等时 2 x 2 表的条件显著性水平提高”,Statistica Neerlandica, 24(1), 1970
[2]“Boschloo 检验”,维基百科,https://en.wikipedia.org/wiki/Boschloo%27s_test
[3]Lise M. Saari 等人。“员工态度和工作满意度”,人力资源管理,43(4), 395-407, 2004, DOI:10.1002/hrm.20032。
示例
在以下示例中,我们考虑文章“员工态度和工作满意度”[3],该文章报告了对 63 位科学家和 117 位大学教授的调查结果。在 63 位科学家中,有 31 位表示他们对自己的工作非常满意,而 117 位大学教授中有 74 位对自己的工作非常满意。是否有显著的证据表明大学教授对自己的工作比科学家更满意?下表总结了上述数据
college professors scientists Very Satisfied 74 31 Dissatisfied 43 32
在进行统计假设检验时,我们通常使用阈值概率或显著性水平来决定是否拒绝零假设 \(H_0\)。假设我们选择常用的 5% 的显著性水平。
我们的备择假设是大学教授实际上比科学家对自己的工作更满意。因此,我们预计 \(p_1\) 非常满意的大学教授的比例将大于 \(p_2\),非常满意的科学家的比例。因此,我们调用
boschloo_exact
并使用alternative="greater"
选项>>> import scipy.stats as stats >>> res = stats.boschloo_exact([[74, 31], [43, 32]], alternative="greater") >>> res.statistic 0.0483 >>> res.pvalue 0.0355
在科学家对工作比大学教授更满意的零假设下,获得至少与观察到的数据一样极端的测试结果的概率约为 3.55%。由于此 p 值小于我们选择的显著性水平,因此我们有证据拒绝 \(H_0\),从而支持备择假设。