我使用簡單的數據集進行成對Wilcoxon檢驗,得到令人驚訝的結果。使用全套(A,B和C)比較A組和C組返回的P值不同於將A和C與數據子集(僅限A和C組)進行比較。Wilcoxon秩和檢驗
dfx <- data.frame(group = c(rep('A', 8), rep('B', 15), rep('C', 6)), sex = sample(c("M", "F"), size = 29, replace = TRUE), age = runif(n = 29, min = 18, max = 54))
pairwise.wilcox.test(dfx$age, dfx$group, pool.sd=F, paired=F)
Pairwise comparisons using Wilcoxon rank sum test
data: dfx$age and dfx$group
A B
B 0.55 -
C 0.13 0.19
P value adjustment method: holm
dfx.ac<-dfx[which(dfx$group!='B'),]
pairwise.wilcox.test(dfx.ac$age, dfx.ac$group, pool.sd=F, paired=F)
Pairwise comparisons using Wilcoxon rank sum test
data: dfx.ac$age and dfx.ab$group
A
C 0.043
P value adjustment method: holm
對單個數據使用Wilcoxon測試會返回相同的p值。
a<-dfx[which(dfx$group=='A'),]$age
c<-dfx[which(dfx$group=='C'),]$age
wilcox.test(a,c)
W = 8, p-value = 0.04262
wilcox.test(dfx.ac$age~dfx.ac$group)
W = 8, p-value = 0.04262
,該怎麼辦錯pairwise.wilcox.test(DFX $年齡,DFX $組,pool.sd = F,配對= F)?
如果我比較一組3組或4組,則差異相同。 ('A',8),代表('B',15),代表('C',6),代表('D',9)),數據框( 組) 性別=樣品(C( 「M」, 「F」),大小= 38,替換= TRUE), 年齡= runif(N = 38,最小= 18,最大值= 54))
dfx.nb<-dfx[which(dfx$group!='B'),]
pairwise.wilcox.test(dfx$age,dfx$group, pool.sd=F, paired=F)
A B C
B 1.00 - -
C 0.57 0.62 -
D 0.56 0.56 1.00
pairwise.wilcox.test(dfx.nb$age,dfx.nb$group, pool.sd=F, paired=F)
A C
C 0.28 -
D 0.28 0.95
在這兩種情況下,我使用霍爾姆調整方法。唯一的區別是一組包含兩組,其他三組。我分別做了3組和4組。 – Pierre
但是你在兩種情況下進行了不同數量的比較!我將在我的回答中添加多個測試更正的邏輯和目的的解釋。 –
好吧,另一個調整函數會給出相同的結果嗎?我會比較所有的羣體,就好像我會用wilco.test來循環它們一樣。 – Pierre