Методы дисперсионного анализа (ANOVA) проверяют, равен ли набор групповых средств (эффекты лечения) или нет. Отказ от нулевой гипотезы приводит к выводу, что не все групповые средства одинаковы. Однако этот результат не дает дополнительной информации о том, какие групповые средства отличаются.
Выполнение ряда t-тестов для определения, какие пары средств значительно отличаются, не рекомендуется. Когда вы выполняете несколько t-тестов, вероятность того, что средства кажутся значительными, и значительные результаты различий могут быть связаны с большим количеством тестов. Эти t-тесты используют данные из той же выборки, поэтому они не являются независимыми. Этот факт затрудняет количественную оценку уровня значимости для нескольких тестов.
Предположим, что в одной t -test вероятность того, что гипотеза null (H0) отклонена, когда она на самом деле верна, является небольшим значением, скажем, 0,05. Предположим также, что вы проводите шесть независимых t-тестов. Если уровень значимости для каждого теста составляет 0,05, тогда вероятность того, что тесты правильно не могут отклонить, H0, когда H0 верно для каждого случая, равна (0,95)6 = 0.735. И вероятность того, что один из тестов неправильно отвергнет нулевую гипотезу, составляет 1 - 0,735 = 0,265, что намного выше 0,05.
Чтобы компенсировать несколько тестов, можно использовать несколько процедур сравнения. Функция Statistics and Machine Learning Toolbox™ multcompare
выполняет многократное парное сравнение групповых средств или эффектов лечения. Опции являются честно значимым критерием различий Тьюки (опция по умолчанию), методом Бонферрони, процедурой Шеффе, методом наименее значимых различий Фишера (lsd) и подходом Данна и Сидака к t-тесту.
Чтобы выполнить несколько сравнений средств группы, предоставьте структуру stats
как вход для multcompare
. Можно получить stats
от одной из следующих функций:
kruskalwallis
- Непараметрический метод для одностороннего размещения
friedman
- Непараметрический метод для двухстороннего размещения
Для нескольких опций процедуры сравнения для повторных измерений смотрите multcompare
(RepeatedMeasuresModel
).
Загрузите выборочные данные.
load carsmall
MPG
представляет мили на галлон для каждого автомобиля, и Cylinders
представляет количество цилиндров в каждом автомобиле, 4, 6 или 8 цилиндров.
Тест, если среднее количество миль на галлон (mpg) отличается между автомобилями, которые имеют разное количество цилиндров. Также вычислите статистику, необходимую для нескольких сравнительных тестов.
[p,~,stats] = anova1(MPG,Cylinders,'off');
p
p = 4.4902e-24
Маленькое значение p около 0 является сильным показателем того, что средние мили на галлон значительно различны для автомобилей с разным количеством цилиндров.
Выполните множественный сравнительный тест, используя метод Бонферрони, чтобы определить, какое количество цилиндров влияет на эффективность автомобилей.
[results,means] = multcompare(stats,'CType','bonferroni')
results = 3×6
1.0000 2.0000 4.8605 7.9418 11.0230 0.0000
1.0000 3.0000 12.6127 15.2337 17.8548 0.0000
2.0000 3.0000 3.8940 7.2919 10.6899 0.0000
means = 3×2
29.5300 0.6363
21.5882 1.0913
14.2963 0.8660
В results
матрица, 1, 2 и 3 соответствуют автомобилям с 4, 6 и 8 цилиндрами соответственно. Первые два столбца показывают, какие группы сравниваются. Например, первая строка сравнивает автомобили с 4 и 6 цилиндрами. В четвертом столбце показано среднее различие mpg для сравниваемых групп. Третий и пятый столбцы показывают нижний и верхний пределы для 95% доверительного интервала для различия в значении группы. В последнем столбце показаны значения p для тестов. Все значения p равны нулю, что указывает на то, что среднее значение mpg для всех групп различается по всем группам.
На рисунке синяя планка представляет группу автомобилей с 4 цилиндрами. Красные полоски представляют другие группы. Ни один из красных интервалов сравнения для среднего mpg автомобилей не перекрывается, что означает, что среднее mpg значительно отличается для автомобилей, имеющих 4, 6 или 8 цилиндров.
Первый столбец means
матрица имеет средние оценки mpg для каждой группы автомобилей. Второй столбец содержит стандартные ошибки оценок.
Загрузите выборочные данные.
y = [52.7 57.5 45.9 44.5 53.0 57.0 45.9 44.0]'; g1 = [1 2 1 2 1 2 1 2]; g2 = {'hi';'hi';'lo';'lo';'hi';'hi';'lo';'lo'}; g3 = {'may';'may';'may';'may';'june';'june';'june';'june'};
y
- вектор отклика и g1
, g2
, и g3
являются сгруппированными переменными (факторами). Каждый фактор имеет два уровня и каждое наблюдение в y
определяется комбинацией уровней факторов. Для примера, y(1) наблюдений
связана с уровнем 1 фактора g1
, уровни 'hi'
фактора g2
, и уровни 'may'
фактора g3
. Точно так же y(6)
наблюдений связана с уровнем 2 фактора
g1
, уровни 'hi'
фактора g2
, и уровни 'june'
фактора g3
.
Проверьте, является ли реакция одинаковой для всех уровней факторов. Также вычислите статистику, необходимую для нескольких сравнительных тестов.
[~,~,stats] = anovan(y,{g1 g2 g3},'model','interaction',... 'varnames',{'g1','g2','g3'});
Значение p 0,2578 указывает, что средние отклики для уровней 'may'
и 'june'
фактора g3
существенно не отличаются. Значение p 0,0347 указывает, что средние отклики для уровней 1
и 2
фактора g1
значительно отличаются. Точно так же значение p 0,0048 указывает, что средние отклики для уровней 'hi'
и 'lo'
фактора g2
значительно отличаются.
Выполните несколько сравнительных тестов, чтобы выяснить, какие группы факторов g1
и g2
значительно отличаются.
results = multcompare(stats,'Dimension',[1 2])
results = 6×6
1.0000 2.0000 -6.8604 -4.4000 -1.9396 0.0272
1.0000 3.0000 4.4896 6.9500 9.4104 0.0170
1.0000 4.0000 6.1396 8.6000 11.0604 0.0136
2.0000 3.0000 8.8896 11.3500 13.8104 0.0101
2.0000 4.0000 10.5396 13.0000 15.4604 0.0087
3.0000 4.0000 -0.8104 1.6500 4.1104 0.0737
multcompare
сравнивает комбинации групп (уровней) двух сгруппированных переменных, g1
и g2
. В results
матрица, число 1 соответствует комбинации уровней 1
от g1
и уровни hi
от g2
, число 2 соответствует комбинации уровней 2
от g1
и уровни hi
от g2
. Точно так же число 3 соответствует комбинации уровней 1
от g1
и уровни lo
от g2
, и число 4 соответствует комбинации уровней 2
от g1
и уровни lo
от g2
. Последний столбец матрицы содержит p-значения.
Для примера первая строка матрицы показывает, что комбинация уровней 1
от g1
и уровни hi
от g2
имеет те же средние значения отклика, что и комбинация 2 уровня
от g1
и уровни hi
от g2
. Значение p, соответствующее этому тесту, составляет 0,0280, что указывает на то, что средние отклики значительно отличаются. Этот результат можно также увидеть на рисунке. Синяя полоса показывает интервал сравнения для средней характеристики для комбинации уровней 1
от g1
и уровни hi
от g2
. Красные полосы являются интервалами сравнения для среднего отклика для других комбинаций групп. Ни одна из красных полос не перекрывается с синей полоской, что означает среднюю характеристику для комбинации 1
уровня от
g1
и уровни hi
от g2
значительно отличается от среднего отклика для других групповых комбинаций.
Можно протестировать другие группы, щелкнув на соответствующем интервале сравнения для группы. Панель, на которой вы нажимаете, становится синей. Столбцы для групп, которые значительно отличаются, являются красными. Столбцы для групп, которые существенно не отличаются, являются серыми. Для примера, если вы кликните по интервалу сравнения для комбинации уровней 1
от g1
и уровни lo
от g2
, интервал сравнения для комбинации уровней 2
от g1
и уровни lo
от g2
перекрывается, и поэтому является серым. И наоборот, другие интервалы сравнения являются красными, что указывает на значительное различие.
Чтобы задать процедуру многократного сравнения, вы хотите multcompare
для проведения использования 'CType'
аргумент пары "имя-значение". multcompare
обеспечивает следующие процедуры:
Вы можете задать честно значимую процедуру различий Тьюки, используя 'CType','Tukey-Kramer'
или 'CType','hsd'
аргумент пары "имя-значение". Тест основан на исследуемом распределении областей значений. Отклонить H 0: αi = αj если
где является верхним 100 * (1 - α) процентилем исследуемого распределения областей значений с параметром k и N - k степенями свободы. k - количество групп (лечение или маргинальные средства), а N - общее количество наблюдений.
Честно значимая процедура различия Тьюки оптимальна для сбалансированных однофакторных дисперсионных анализов и аналогичных процедур с равными размерами выборки. Доказано, что он консервативен для однофакторный дисперсионный анализ с различными размерами образцов. Согласно недоказанной догадке Тьюки-Крамера, она также точна для проблем, где сравниваемые величины коррелируют, как в анализе ковариации с несбалансированными ковариационными значениями.
Можно задать метод Бонферрони, используя 'CType','bonferroni'
Пара "имя-значение". Этот метод использует критические значения от Студента t - распределение после регулирования, чтобы дать компенсацию за несколько сравнений. Тест отклоняет H 0: αi = αj уровень значимости, где k количество групп, если
где N - общее количество наблюдений, а k - количество групп (маргинальные средства). Эта процедура является консервативной, но обычно меньше, чем процедура Шеффе.
Вы можете задать подход Данна и Сидака, используя 'CType','dunn-sidak'
аргумент пары "имя-значение". Это использует критические значения от t - распределение после поправки на несколько сравнений, которая была предложена Данном и оказалась точной Sidák. Этот тест отклоняет H 0: αi = αj, если
где
и k количество групп. Эта процедура аналогична, но менее консервативна, чем процедура Бонферрони.
Вы можете задать процедуру различия наименьших значений, используя 'CType','lsd'
аргумент пары "имя-значение". Этот тест использует тестовую статистику
Он отклоняет H 0: αi = αj если
Фишер предлагает защиту от нескольких сравнений путем выполнения LSD только, когда нулевая гипотеза H0: α 1 = α 2 =... = α k отклоняется ANOVA F -test. Даже в этом случае LSD может не отклонить ни одну из индивидуальных гипотез. Также возможно, что Дисперсионный Анализ не отвергает H0, даже когда существуют различия между некоторыми групповыми средствами. Это поведение происходит, потому что равенство остальных средств группы может привести к тому, что F-test statistic будет несущественным. Без каких-либо условий LSD не обеспечивает никакой защиты от проблемы многократного сравнения.
Вы можете задать процедуру Шеффе, используя 'CType','scheffe'
аргумент пары "имя-значение". Критические значения получают из распределения F. Тест отклоняет H 0: αi = αj, если
Эта процедура обеспечивает одновременный доверительный уровень для сравнения всех линейных комбинаций средств. Он консервативен для сравнения простых различий пар.
[1] Милликен Г. А. и Д. Э. Джонсон. Анализ данных Messy. Том I: Спроектированные эксперименты. Бока Ратон, FL: Chapman & Hall/CRC Press, 1992.
[2] Нетер Дж., М. Х. Кутнер, К. Дж. Нахтсхайм, У. Вассерман. 4th ed. Applied Linear Statistical Models.Irwin Press, 1996.
[3] Hochberg, Y., and A. C. Tamhane. Множественные процедуры сравнения. Hoboken, NJ: John Wiley & Sons, 1987.
anova1
| anova2
| anovan
| aoctool
| friedman
| kruskalwallis
| multcompare