为什么公式和 R 的 Fisher.test 的优势比不同?应该选择哪一个?

机器算法验证 r 优势比 渔民精确测试
2022-02-15 22:39:23

在下面的例子中

> m = matrix(c(3, 6, 5, 6), nrow=2)
> m
     [,1] [,2]
[1,]    3    5
[2,]    6    6
> (OR = (3/6)/(5/6))    #1
[1] 0.6
> fisher.test(m)        #2

    Fisher's Exact Test for Count Data

data:  m 
p-value = 0.6699
alternative hypothesis: true odds ratio is not equal to 1 
95 percent confidence interval:
 0.06390055 5.07793271 
sample estimates:
odds ratio 
 0.6155891 

我“手动”计算了优势比(#1),0.600;然后(#2)作为Fisher精确检验的输出之一,0.616。

为什么我没有得到相同的值?

为什么存在多种计算优势比的方法,以及如何选择最合适的一种?

3个回答

从帮助页面fisher.test()

请注意,使用条件最大似然估计 (MLE) 而不是无条件 MLE(样本优势比)。

为了增加这里的讨论,询问在这种“条件”可能性中究竟以什么为条件是有用的。Fisher 检验与其他分类分析的不同之处在于,它认为表格的所有边距都是固定的,而逻辑回归模型(以及相应的 Pearson 卡方检验是逻辑模型的得分检验)只考虑固定一个边距.

然后,Fisher 检验将超几何分布视为在 4 个细胞中的每一个中观察到的计数的概率模型。超几何分布的特点是,由于原始优势比的分布不连续,您通常会获得不同的 OR 作为最大似然估计。

为了回答你的第二个问题,生物统计学不是我的强项,但我相信多重优势比统计的原因是为了说明抽样设计和实验设计。

我在这里找到了三个参考资料,可以让您了解为什么有条件的 MLE 与无条件的优势比以及其他类型之间存在差异。

  1. 具有固定边际的 2 × 2 表组合中常见优势比的点和区间估计

  2. 偏差对配对和分层样本相对风险估计量的影响

  3. 共同优势比的条件最大似然估计的比较研究