Как выполнить тест Данна в Python


Критерий Крускала-Уоллиса используется для определения наличия статистически значимой разницы между медианами трех или более независимых групп. Он считается непараметрическим эквивалентом однофакторного дисперсионного анализа .

Если результаты теста Краскела-Уоллиса статистически значимы, целесообразно провести тест Данна, чтобы точно определить, какие группы отличаются.

В этом руководстве объясняется, как выполнить тест Данна в Python.

Пример: тест Данна в Python

Исследователи хотят знать, приводят ли три разных удобрения к разным уровням роста растений. Они случайным образом выбирают 30 разных растений и делят их на три группы по 10 штук, применяя к каждой группе разные удобрения. В конце месяца измеряют высоту каждого растения.

Выполнив тест Крускала-Уоллиса, они обнаружили, что общее p-значение является статистически значимым, что означает, что средний рост неодинаков в трех группах. Затем они проводят тест Данна, чтобы точно определить, какие группы отличаются.

Чтобы выполнить тест Данна в Python, мы можем использовать функцию posthoc_dunn() из библиотеки scikit-posthocs.

Следующий код показывает, как использовать эту функцию:

Шаг 1: Установите scikit-posthocs.

Сначала нам нужно установить библиотеку scikit-posthocs:

pip install scikit-posthocs

Шаг 2: Проведите тест Данна.

Далее мы можем создать данные и выполнить тест Данна:

#specify the growth of the 10 plants in each group
group1 = [7, 14, 14, 13, 12, 9, 6, 14, 12, 8]
group2 = [15, 17, 13, 15, 15, 13, 9, 12, 10, 8]
group3 = [6, 8, 8, 9, 5, 14, 13, 8, 10, 9]
data = [group1, group2, group3]

#perform Dunn's test using a Bonferonni correction for the p-values
import scikit_posthocs as sp
sp. posthoc_dunn (data, p_adjust = 'bonferroni')

 1 2 3
1 1.000000 0.550846 0.718451
2 0.550846 1.000000 0.036633
3 0.718451 0.036633 1.000000

Обратите внимание, что мы решили использовать поправку Бонферрони для p-значений, чтобы контролировать частоту ошибок по семействам , но другие возможные варианты аргумента p_adjust включают:

  • Сидак
  • Холм-сидак
  • Симс-Хохберг
  • хоммель
  • fdr_bh
  • fdr_by
  • fdr_tsbh

Обратитесь к документации для получения более подробной информации о каждом из этих методов корректировки p-значения.

Шаг 3: Интерпретируйте результаты.

По результатам теста Данна мы можем наблюдать следующее:

  • Скорректированное значение p для разницы между группой 1 и группой 2 составляет 0,550846 .
  • Скорректированное значение p для разницы между группой 1 и группой 3 составляет 0,718451 .
  • Скорректированное значение p для разницы между группой 2 и группой 3 составляет 0,036633 .

Таким образом, только две группы, которые статистически значимо различаются при α = 0,05, — это группы 2 и 3.

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

Введение в тест Данна для множественных сравнений
Как выполнить тест Данна в R

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