Как выполнить тест Крускала-Уоллиса в Python


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

Он считается непараметрическим эквивалентом однофакторного дисперсионного анализа .

В этом руководстве объясняется, как провести тест Крускала-Уоллиса в Python.

Пример: тест Крускала-Уоллиса в Python

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

Используйте следующие шаги, чтобы выполнить тест Крускала-Уоллиса, чтобы определить, одинаков ли медианный рост в трех группах.

Шаг 1: Введите данные.

Во-первых, мы создадим три массива для хранения измерений нашего завода для каждой из трех групп:

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]

Шаг 2: Выполните тест Крускала-Уоллиса.

Далее мы проведем тест Крускала-Уоллиса, используя функцию kruskal() из библиотеки scipy.stats:

from scipy import stats

#perform Kruskal-Wallis Test 
stats.kruskal(group1, group2, group3)

(statistic=6.2878, pvalue=0.0431)

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

Тест Крускала-Уоллиса использует следующие нулевые и альтернативные гипотезы:

Нулевая гипотеза (H 0 ): Медиана одинакова для всех групп.

Альтернативная гипотеза: (Ha): Медиана не одинакова для всех групп.

В этом случае тестовая статистика равна 6,2878 , а соответствующее значение p равно 0,0431.Поскольку это p-значение меньше 0,05, мы можем отвергнуть нулевую гипотезу о том, что средний рост растений одинаков для всех трех удобрений. У нас есть достаточно доказательств, чтобы заключить, что тип используемого удобрения приводит к статистически значимым различиям в росте растений.