Как выполнить ANOVA Уэлча в R (шаг за шагом)


Дисперсионный анализ Уэлча является альтернативой типичному однофакторному дисперсионному анализу , когда нарушается допущение о равных дисперсиях .

В следующем пошаговом примере показано, как выполнить дисперсионный анализ Уэлча в R.

Шаг 1: Создайте данные

Чтобы определить, приводят ли три разных метода обучения к разным экзаменационным баллам, профессор случайным образом назначает 10 студентов для использования каждого метода (метода A, B или C) в течение одной недели, а затем заставляет каждого студента сдать экзамен одинаковой сложности.

Экзаменационные баллы 30 студентов показаны ниже:

#create data frame
df <-data.frame(group = rep (c('A',' B', 'C'), each =10),
 score = c(64, 66, 68, 75, 78, 94, 98, 79, 71, 80,
 91, 92, 93, 85, 87, 84, 82, 88, 95, 96,
 79, 78, 88, 94, 92, 85, 83, 85, 82, 81))

#view first six rows of data frame
head(df)

 group score
1 A 64
2 A 66
3 A 68
4 A 75
5 A 78
6 A 94

Шаг 2: Тест на равные отклонения

Затем мы можем выполнить тест Бартлетта, чтобы определить, равны ли дисперсии между каждой группой.

Если p-значение тестовой статистики меньше некоторого уровня значимости (например, α = 0,05), то мы можем отклонить нулевую гипотезу и сделать вывод, что не все группы имеют одинаковую дисперсию.

Чтобы выполнить тест Бартлетта, мы можем использовать функцию bartlett.test в базе R, которая использует следующий синтаксис:

bartlett.test(формула, данные)

Вот как использовать эту функцию в нашем примере:

#perform Bartlett's test
bartlett. test (score ~ group, data = df)

 Bartlett test of homogeneity of variances

data: score by group
Bartlett's K-squared = 8.1066, df = 2, p-value = 0.01737

Значение p ( 0,01737 ) из теста Бартлетта меньше, чем α = 0,05, что означает, что мы можем отвергнуть нулевую гипотезу о том, что каждая группа имеет одинаковую дисперсию.

Таким образом, предположение о равных дисперсиях нарушается, и мы можем приступить к выполнению дисперсионного анализа Уэлча.

Шаг 3. Выполните дисперсионный анализ Уэлча.

Чтобы выполнить дисперсионный анализ Уэлча в R, мы можем использовать функцию oneway.test() из базы R следующим образом:

#perform Welch's ANOVA
oneway. test (score ~ group, data = df, var. equal = FALSE )

 One-way analysis of means (not assuming equal variances)

data: score and group
F = 5.3492, num df = 2.00, denom df = 16.83, p-value = 0.01591

Общее значение p ( 0,01591 ) из таблицы ANOVA меньше, чем α = 0,05, что означает, что мы можем отклонить нулевую гипотезу о том, что экзаменационные баллы равны между тремя методами обучения.

Затем мы можем выполнить апостериорный тест, чтобы определить, какие групповые средние значения отличаются. Обратитесь к следующим руководствам, чтобы узнать, как выполнять различные апостериорные тесты в R:

Обратитесь к этому руководству , чтобы определить, какой апостериорный тест лучше всего использовать в зависимости от вашей ситуации.

Дополнительные ресурсы

Как провести односторонний дисперсионный анализ в R
Как провести двухсторонний ANOVA в R
Как провести повторные измерения ANOVA в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.