Questão
As pontuações dos testes de três grupos de pessoas são salvas como vetores separados em R.
set.seed(1)
group1 <- rnorm(100, mean = 75, sd = 10)
group2 <- rnorm(100, mean = 85, sd = 10)
group3 <- rnorm(100, mean = 95, sd = 10)
Quero saber se existe uma diferença significativa nas medianas entre esses grupos. Eu sei que eu poderia testar o grupo 1 versus o grupo 2 usando o teste de Wilcoxon, assim.
wilcox.test(group1, group2)
No entanto, isso compara apenas dois grupos por vez, e eu gostaria de comparar os três simultaneamente. Eu gostaria de um teste estatístico que produza um valor de p no nível de significância 0,05. Alguém poderia ajudar?
Edit # 1 - Teste de mediana do humor
Seguindo a resposta sugerida pelo usuário Hibernating, tentei o teste mediano de Mood.
median.test <- function(x, y){
z <- c(x, y)
g <- rep(1:2, c(length(x), length(y)))
m <- median(z)
fisher.test(z < m, g)$p.value
}
median.test(group1, group2)
No entanto, essa abordagem me permite testar uma diferença significativa entre as medianas de apenas dois grupos por vez. Não tenho certeza de como usá-lo para comparar as medianas dos três simultaneamente.
Edit # 2 - Teste de Kruskal-Wallis
A resposta sugerida pelo usuário dmartin parece ser mais ou menos o que eu preciso e me permite testar todos os três grupos simultaneamente.
kruskal.test(list(group1, group2, group3))
Editar # 3
O usuário Greg Snow observa útil em sua resposta que o teste de Kruskal-Wallis é apropriado desde que faça suposições estritas que o tornem também um teste de meios.
median test
. Minha própria resposta / comentários está aqui .