2013-06-11 28 views
11

輸入Fisher檢驗錯誤:LDSTP太小

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. 

我該如何解決這個問題,而modifyng的原始數據。對於這種比較是否有任何非參數測試?

回答

19

您可以嘗試增加workspace參數的默認值,但我不知道您是否能夠使其足夠大(我放棄了workspace=2e8,但仍然失敗;我用完了內存位於workspace=2e9)。您也可以嘗試模擬p值,例如例如fisher.test(Finaltable,simulate.p.value=TRUE,B=1e7)(但是),但由於p值非常小,因此如果您想要對p值進行多次綁定,那麼您將需要大量的模擬(B),這也會非常緩慢。 (對於大多數的目的,知道p<1e-7是綽綽有餘的 - 但在某些生物信息學的情況下,人們希望使用p作爲信號強度的指標和/或施加大量的多重校正比較。這些方法,但他們在那裏...)