Однофакторный дисперсионный анализ используется для определения того, существует ли статистически значимое различие между средними значениями трех или более независимых групп.
Однофакторный дисперсионный анализ использует следующие нулевую и альтернативную гипотезы:
- H 0 : Все средние группы равны.
- H A : Не все групповые средние одинаковы.
Если общее p-значение ANOVA меньше определенного уровня значимости (например, α = 0,05), то мы отклоняем нулевую гипотезу и делаем вывод, что не все средние группы равны.
Чтобы выяснить, какие групповые средние различаются, мы можем затем выполнить попарные сравнения post-hoc .
В следующем примере показано, как выполнить следующие апостериорные попарные сравнения в R:
- Метод Тьюки
- Метод Шеффе
- Метод Бонферрони
- Метод Холма
Пример: Однофакторный дисперсионный анализ в R
Предположим, учитель хочет знать, приводят ли три разных метода обучения к разным экзаменационным баллам у студентов. Чтобы проверить это, она случайным образом назначает 10 студентов для использования каждого метода обучения и записывает их экзаменационные баллы.
Мы можем использовать следующий код в R для выполнения однофакторного дисперсионного анализа для проверки различий в средних результатах экзаменов между тремя группами:
#create data frame
df <- data.frame(technique = rep(c(" tech1", " tech2", " tech3 "), each= 10 ),
score = c(76, 77, 77, 81, 82, 82, 83, 84, 85, 89,
81, 82, 83, 83, 83, 84, 87, 90, 92, 93,
77, 78, 79, 88, 89, 90, 91, 95, 95, 98))
#perform one-way ANOVA
model <- aov(score ~ technique, data = df)
#view output of ANOVA
summary(model)
Df Sum Sq Mean Sq F value Pr(>F)
technique 2 211.5 105.73 3.415 0.0476 \*
Residuals 27 836.0 30.96
---
Signif. codes: 0 '\*\*\*' 0.001 '\*\*' 0.01 '\*' 0.05 '.' 0.1 ' ' 1
Общее p-значение ANOVA (0,0476) меньше, чем α = 0,05, поэтому мы отвергаем нулевую гипотезу о том, что средний балл за экзамен одинаков для каждой методики обучения.
Мы можем приступить к выполнению апостериорных попарных сравнений, чтобы определить, какие группы имеют разные средние значения.
Метод Тьюки
Апостериорный метод Тьюки лучше всего использовать, когда размер выборки в каждой группе одинаков.
Мы можем использовать встроенную функцию TukeyHSD() для выполнения апостериорного метода Tukey в R:
#perform the Tukey post-hoc method
TukeyHSD(model, conf. level = .95 )
Tukey multiple comparisons of means
95% family-wise confidence level
Fit: aov(formula = score ~ technique, data = df)
$technique
diff lwr upr p adj
tech2-tech1 4.2 -1.9700112 10.370011 0.2281369
tech3-tech1 6.4 0.2299888 12.570011 0.0409017
tech3-tech2 2.2 -3.9700112 8.370011 0.6547756
Из вывода мы видим, что единственное значение p (« p adj ») меньше 0,05 относится к разнице между техникой и техникой 3.
Таким образом, можно сделать вывод, что существует лишь статистически значимая разница в средних баллах за экзамен между студентами, использовавшими методику 1 и методику 3.
Метод Шеффе
Метод Шеффе является наиболее консервативным методом апостериорных парных сравнений и дает самые широкие доверительные интервалы при сравнении групповых средних.
Мы можем использовать функцию ScheffeTest() из пакета DescTools для выполнения апостериорного метода Scheffe в R:
library (DescTools)
#perform the Scheffe post-hoc method
ScheffeTest(model)
Posthoc multiple comparisons of means: Scheffe Test
95% family-wise confidence level
$technique
diff lwr.ci upr.ci pval
tech2-tech1 4.2 -2.24527202 10.645272 0.2582
tech3-tech1 6.4 -0.04527202 12.845272 0.0519.
tech3-tech2 2.2 -4.24527202 8.645272 0.6803
---
Signif. codes: 0 '\*\*\*' 0.001 '\*\*' 0.01 '\*' 0.05 '.' 0.1 ' ' 156
Из вывода мы видим, что нет p-значений меньше 0,05, поэтому мы можем сделать вывод, что нет статистически значимой разницы в средних экзаменационных баллах между любыми группами.
Метод Бонферрони
Метод Бонферрони лучше всего использовать, когда у вас есть набор запланированных попарных сравнений, которые вы хотели бы провести.
Мы можем использовать следующий синтаксис в R для выполнения апостериорного метода Бонферрони:
#perform the Bonferroni post-hoc method
pairwise. t.test (df$score, df$technique, p. adj ='bonferroni')
Pairwise comparisons using t tests with pooled SD
data: df$score and df$technique
tech1 tech2
tech2 0.309 -
tech3 0.048 1.000
P value adjustment method: bonferroni
Из вывода мы видим, что единственное значение p меньше 0,05 относится к разнице между техникой и техникой 3.
Таким образом, можно сделать вывод, что существует лишь статистически значимая разница в средних баллах за экзамен между студентами, использовавшими методику 1 и методику 3.
Метод Холма
Метод Холма также используется, когда у вас есть набор запланированных попарных сравнений, которые вы хотели бы провести заранее, и он, как правило, имеет даже более высокую мощность, чем метод Бонферрони, поэтому его часто предпочитают.
Мы можем использовать следующий синтаксис в R для выполнения апостериорного метода Холма:
#perform the Holm post-hoc method
pairwise. t.test (df$score, df$technique, p. adj ='holm')
Pairwise comparisons using t tests with pooled SD
data: df$score and df$technique
tech1 tech2
tech2 0.206 -
tech3 0.048 0.384
P value adjustment method: holm
Из вывода мы видим, что единственное значение p меньше 0,05 относится к разнице между техникой и техникой 3.
Таким образом, мы снова пришли бы к выводу, что существует только статистически значимая разница в средних экзаменационных баллах между студентами, использовавшими методику 1 и методику 3.
Дополнительные ресурсы
Следующие руководства содержат дополнительную информацию об ANOVA и апостериорных тестах:
Как интерпретировать F-значение и P-значение в ANOVA
Полное руководство: как сообщить о результатах ANOVA
Тьюки против Бонферрони против Шеффе: какой тест следует использовать?