Как выполнить тест левена в python
Тест Левена используется для определения того, имеют ли две или более группы равные дисперсии. Он широко используется, поскольку многие статистические тесты предполагают, что группы имеют равные дисперсии, а тест Левена позволяет определить, выполняется ли это предположение.
В этом руководстве объясняется, как выполнить тест Левена в Python.
Пример: тест Левена в Python
Исследователи хотят знать, приводят ли три разных удобрения к разным уровням роста растений. Они случайным образом выбирают 30 разных растений и делят их на три группы по 10, применяя к каждой группе разные удобрения. Через месяц измеряют высоту каждого растения.
Используйте следующие шаги, чтобы выполнить тест Левена в Python, чтобы определить, имеют ли три группы равные дисперсии.
Шаг 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: Выполните тест Левена.
Далее мы выполним тест Левена, используя функцию levane() из библиотеки SciPy, которая использует следующий синтаксис:
levene(sample1, sample2, …, center=’медиана’)
Золото:
- sample1, sample2 и т. д.: имена сэмплов.
- в центре: метод, используемый для теста Левена. По умолчанию используется «медиана», но есть и другие варианты: «среднее» и «обрезанное».
Как упоминалось в документации , на самом деле существует три различных варианта теста Левена, которые вы можете использовать. Рекомендуемое использование:
- «медиана»: рекомендуется для асимметричных распределений.
- «средний»: рекомендуется для симметричных распределений с умеренным хвостом.
- «обрезанный»: рекомендуется для распределений с тяжелым хвостом.
Следующий код показывает, как выполнить тест Левена, используя в качестве центра среднее значение и медиану :
import scipy.stats as stats #Levene's test centered at the median stats.levene(group1, group2, group3, center='median') (statistic=0.1798, pvalue=0.8364) #Levene's test centered at the mean stats.levene(group1, group2, group3, center='mean') (statistic=0.5357, pvalue=0.5914)
В обоих методах значение p составляет не менее 0,05. Это означает, что в обоих случаях нам не удастся отвергнуть нулевую гипотезу. Это означает, что у нас нет достаточных доказательств, чтобы сказать, что разница в росте растений между тремя удобрениями существенно различается.
Другими словами, все три группы имеют равные дисперсии. Если бы мы провели статистический тест (например, однофакторный дисперсионный анализ ), предполагающий, что каждая группа имеет одинаковую дисперсию, то это предположение было бы выполнено.