G 检验与皮尔逊卡方检验

机器算法验证 p 值 蒙特卡洛 列联表 卡方分布 卡方检验
2022-03-23 22:48:13

我在N×M列联表中测试独立性。我不知道是G 检验还是 Pearson 的卡方检验更好。样本量为数百个,但细胞计数较低。Wikipedia page所述,G 检验的卡方分布近似值优于 Pearson 卡方检验。但是我使用蒙特卡罗模拟来计算 p 值,那么这两个测试之间有什么区别吗?

3个回答

它们是渐近相同的。它们只是获得相同想法的不同方式。更具体地说,Pearson 的卡方检验是分数检验,而 G 检验是似然比检验。为了更好地理解这些想法,它可能会帮助您阅读我的答案:为什么我的 p 值在逻辑回归输出、卡方检验和 OR 的置信区间之间存在差异? 要回答您的直接问题,如果您通过蒙特卡洛模拟计算 p 值,那没关系;您可以使用对您更方便的那个。请注意,低细胞计数没有问题,只有(可能)低预期细胞计数;细胞计数可能很低,但预期的计数很好。此外,当 p 值由模拟确定时,低实际计数和低预期计数都不重要。

(对于它的价值,我可能会使用 Pearson 的卡方,因为 R 有一个方便的功能,其中包括模拟 p 值的选项。)

看看 Rfast。 https://cran.r-project.org/web/packages/Rfast/index.html 相关命令为 g2Test_univariate(data, dc) g2Test_univariate_perm(data, dc, nperm) 计算速度极快。通常更喜欢 G^2 测试,因为卡方是它的近似值。

卡方检验和 G 检验通常产生相似的结果。但这里最重要的是你必须从两个测试中选择一个并坚持下去,不仅是为了你提到的测试,而且是为了你研究过程中的未来测试。这是可取的,因为如果您尝试交替使用这两种测试,很可能会增加误报的机会。