[R] mann-whitney test with more groups
Peter Ehlers
ehlers at ucalgary.ca
Wed Nov 18 17:32:39 CET 2009
Sorry, correction below.
Peter Ehlers wrote:
>
> Kim Vanselow wrote:
>> Dear r-helpers,
>> I want to test groups of samples for significant differences.
>> Question: Does Group1 differ significantly from group2.
>> This is a question to be answered by mann-whitney-u-test.
>>
>> I know that I can use wilcox.test with 2 samples.
>>
>> My problem: How can r perform the test automatically if there are more
>> than 2 groups in my data frame.
>> Test group1 vs. 2, 1 vs. 3, 1 vs. 4, etc.
>>
>>
>> This is my skript:
>> Deckung <- read.table("Gesamtdeckung.csv", sep=";", header=TRUE,
>> dec=",", row.names=1)
>>
>> x <- Deckung$Gesamtdeckung
>> y <- Deckung$Klasse
>>
>> #U-Test
>> wilcox.test(x ~ y, paired = FALSE, subset = y %in% c("1", "2"))
>> wilcox.test(x ~ y, paired = FALSE, subset = y %in% c("1", "3"))
>> wilcox.test(x ~ y, paired = FALSE, subset = y %in% c("2", "3"))
>>
>> Any help would be greatly appreciated!
>>
>> Thanks
>> Kim
>
> This sounds like serious data dredging, but if you're
> sure that it's what you want, try the combn() function:
>
> y <- gl(4, 5)
> x <- rnorm(20)
> m <- cbind(t(combn(4, 2)), NA)
> for(i in 1:nrow(idx))
> m[i, 3] <-
> wilcox.test(x ~ y, subset = y %in% idx[i,])$p.value
> m
>
> -Peter Ehlers
>
y <- gl(4, 5)
x <- rnorm(20)
m <- cbind(t(combn(4, 2)), NA)
for(i in 1:nrow(m)) # change 'idx' to 'm'
m[i, 3] <-
wilcox.test(x ~ y, subset = y %in% m[i,])$p.value # ditto
-Peter Ehlers
More information about the R-help
mailing list