出现这个错误的原因是由于数据太大而导致内存不足,可以通过加大可用内存的大小来解决。具体操作如下:
使用memory.limit()函数查看当前可用内存大小:
memory.limit()
输出结果为:
[1] 8055
表示当前可用内存为8055 Mb。如果需要改变可用内存大小,可以使用memory.limit(size)函数,其中size表示新的可用内存大小。
例如,将可用内存大小改为10000 Mb:
memory.limit(size=10000)
改变后使用memory.limit()函数查看是否修改成功:
memory.limit()
输出结果为:
[1] 10000
表示已经成功将可用内存大小改为10000 Mb。
重新运行Fisher检验(如下例子中),即可解决错误:
fisher.test(matrix(c(10, 5, 20, 15), ncol=2))