R中的Fisher检验

机器算法验证 r 统计学意义 列联表 渔民精确测试
2022-03-21 05:47:28

假设我们有以下数据集:

                Men    Women    
Dieting         10      30
Non-dieting     5       60

如果我在 R 中运行 Fisher 精确检验,那么alternative = greater(或更少)意味着什么?例如:

mat = matrix(c(10,5,30,60), 2,2)
fisher.test(mat, alternative="greater")

我得到p-value = 0.01588odds ratio = 3.943534此外,当我像这样翻转列联表的行时:

mat = matrix(c(5,10,60,30), 2, 2)
fisher.test(mat, alternative="greater")

然后我得到p-value = 0.9967and odds ratio = 0.2535796但是,当我在没有替代参数(即fisher.test(mat))的情况下运行两个列联表时,我得到了p-value = 0.02063.

  1. 你能向我解释一下原因吗?
  2. 另外,在上述情况下,原假设和备择假设是什么?
  3. 我可以在这样的列联表上运行 Fisher 测试吗:

    mat = matrix(c(5000,10000,69999,39999), 2, 2)
    

PS:我不是统计学家。我正在尝试学习统计数据,因此非常感谢您的帮助(简单英语的答案)。

1个回答

greater(or less) 是指将原假设p1=p2与替代p1>p2(or p1<p2) 进行比较的单边检验。相比之下,双边检验将原假设与p1不等于 的替代假设进行比较p2

对于您的表格,您的样本中男性节食者的比例为 1/4 = 0.25(40 人中有 10 人)。另一方面,非节食者的男性比例为 1/13 或(65 人中有 5 人)等于 0.077。所以估计为p10.25 和p20.077。因此看来 p1>p2

这就是为什么单边替代方案p1>p2的 p 值为 0.01588。(小的 p 值表明零假设不太可能,而替代假设很可能。)

当替代方案是p1<p2我们看到您的数据表明差异方向错误(或未预料到)时。

这就是为什么在这种情况下 p 值如此之高 0.9967。对于双边替代方案,p 值应该比单边替代方案略高p1>p2事实上,它的 p 值等于 0.02063。