首页 > 解决方案 > fisher.test() 中的错误:FEXACT 错误 40。超出工作区

问题描述

fisher.test() 中的错误:FEXACT 错误 40。超出工作区。

我有 16173 观察的两列数据。当我在 R 中执行 fisher.test 时,无论我调整工作区有多大,它总是显示空间不足的错误。我的问题是:fisher 测试可以处理这样的样本量吗?我可以使用卡方检验作为替代选择吗?

部分数据如下图:

    A   B
[1,]    0   0
[2,]    0.02873563  0
[3,]    0   0
[4,]    0.10185185  0.10666667
[5,]    0.05714286  0
[6,]    0.25925926  0
[7,]    0.02727273  0
[8,]    0.125   0
[9,]    0   0.04
[10,]   0.14876033  0
[11,]   0.61344538  0.2
[12,]   0.24852071  0.01234568
[13,]   0.20491803  0.03703704
[14,]   0.20472441  0
[15,]   0.09375 0
[16,]   0.29661017  0
[17,]   0.15254237  0.07228916
[18,]   0.03278689  0
[19,]   0.04891304  0
[20,]   0.58378378  0.05194805

提前致谢。

标签: rstatistics

解决方案


Fisher 检验只能用于非常小的样本,因为它的计算量非常大。您应该使用卡方检验。

编辑:我没有太注意,所以我犯了几个错误。数据似乎是数字的,这意味着 Fisher / Chi-square 检验不合适,因为这些检验只能与分类变量一起使用。t 检验可能更合适。

此外,Fisher 检验也确实可以用于大样本,计算限制基于表大小(类别数),也适用于大样本。尽管对于足够大的样本,卡方检验将足够接近这些结果(前提是满足细胞计数)。


推荐阅读