费舍尔检验错误:LDSTP太小。

18

输入

NN <- c(359,32);JJ <- c(108,13);NNS <- c(103,15);VBN <- c(95,9);RB <- c(63,11);NNP <- c(56,0);VBG <- c(55,10);IN <- c(38,16);VB <- c(20,10);CD <- c(17,6);CC <- c(11,6);DT <- c(11,4);MD <- c(8,5);PRP4 <- c(8,1);PRP <- c(7,4);FW <- c(5,1);VBD <- c(5,3);RBR <- c(4,0);VBP <- c(4,1);VBZ <- c(4,3);WRB <- c(4,2);EX <- c(3,1);NNPS <- c(2,0);WDT <- c(2,3);WP <- c(2,1);PDT <- c(1,1);POS <- c(1,0);RBS <- c(1,0);TO <- c(1,1);UH <- c(0,1)
Finaltable <-
cbind(NN,JJ,NNS,VBN,RB,NNP,VBG,IN,VB,CD,CC,DT,MD,PRP4,PRP,FW,VBD,RBR,VBP,VBZ,WRB,EX,NNPS,WDT,WP,PDT,POS,RBS,TO,UH)
rownames(Finaltable) <- c("tag1","tag2")
Finaltable

chisq.test(Finaltable)


fisher.test(Finaltable)

输出

fisher.test(Finaltable) : FEXACT error 7.
LDSTP is too small for this problem.
Try increasing the size of the workspace.

有没有不修改原始数据就能解决这个问题的方法?有没有针对这种比较的非参数检验方法?

1个回答

29

您可以尝试增加workspace参数的值,但我不知道您是否能够将其扩大到足够大的程度(我在workspace=2e8时放弃了,它仍然失败;我在workspace=2e9时耗尽了内存)。您还可以尝试模拟p值,例如fisher.test(Finaltable,simulate.p.value=TRUE,B=1e7),但是由于p值非常小,如果要做更多的操作,您需要大量的模拟(B),这也会非常缓慢。(对于大多数情况来说,知道p值小于<1e-7已经足够了 - 但在某些生物信息学中,人们希望将p值用作信号强度指数和/或对比较进行大规模多重校正。我并不喜欢这些方法,但它们确实存在...)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接