Вопрос
Результаты тестов трех групп людей сохраняются в виде отдельных векторов в 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)
Я хочу знать, есть ли значительная разница в медиане между этими группами. Я знаю, что могу тестировать группу 1 против группы 2, используя тест Уилкоксона, вот так.
wilcox.test(group1, group2)
Тем не менее, это сравнивает только две группы одновременно, и я хотел бы сравнить все три одновременно. Я хотел бы статистический тест, который дает значение р на уровне значимости 0,05. Может ли кто-нибудь помочь, пожалуйста?
Редактировать # 1 - Медиана тест настроения
Следуя предложенному пользователю ответу Hibernating, я попробовал медианный тест 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)
Тем не менее, этот подход позволяет мне проверить значительную разницу между медианами только двух групп одновременно. Я не уверен, как использовать это, чтобы сравнить медианы всех трех одновременно.
Правка № 2 - тест Крускала-Уоллиса
Предложенный пользователем dmartin ответ выглядит более или менее тем, что мне нужно, и позволяет мне тестировать все три группы одновременно.
kruskal.test(list(group1, group2, group3))
Редактировать № 3
Пользователь Грег Сноу услужливо отмечает в своем ответе, что тест Крускала-Уоллиса уместен, если он делает строгие предположения, которые делают его также проверкой средств.
median test
. Мой собственный ответ / комментарии здесь .