Проверка гипотез является важным инструментом в логической статистике для определения того, каким может быть значение параметра совокупности. Мы часто делаем этот вывод на основе выборочного анализа данных.
В основе проверки гипотез лежат два атрибута:
Нулевая гипотеза: H
Альтернативная гипотеза: H1
Типы методов проверки гипотез
а . Критерий хи-квадрат ( корреляционные тесты )
б. Анализ дисперсионного теста (ANOVA) (Параметрические статистические тесты гипотез)
в. Критерий Стьюдента (параметрические статистические тесты гипотез)
д. Тест Шапиро-Уилка (тесты на нормальность)
е. Тест Д’Агостино K² (тесты на нормальность)
ф. Коэффициент корреляции Пирсона ( Корреляционные тесты )
г. Ранговая корреляция Спирмена (Корреляционные тесты)
час H-критерий Крускала-Уоллиса (Непараметрические статистические тесты гипотез)
я. Тест Фридмана (Непараметрические статистические тесты гипотез)
Дж. U-критерий Манна-Уитни (непараметрические статистические тесты гипотез)
Хи-квадрат тест
Тест хи-квадрат хорошо известен даже тем, кто начинает со статистического машинного обучения. Здесь этот тест используется для проверки того, связаны ли две категориальные переменные или независимы. И предполагается, что наблюдения, используемые при расчете таблицы непредвиденных обстоятельств, являются независимыми.
Проверяет, связаны или независимы две категориальные переменные.
Предположения
- Наблюдения, используемые при расчете таблицы непредвиденных обстоятельств, являются независимыми.
- 25 или более примеров в каждой ячейке таблицы сопряженности.
Интерпретация
- H0: две выборки независимы.
- H1: существует зависимость между образцами.
Код Python из
scipy.stats импортирует chi2_contingency
таблица = …
stat, p, dof, ожидаемая = chi2_contingency(table)’
Пример
Тест дисперсионного анализа (ANOVA)
ANOVA — еще один широко популярный тест, который используется для проверки того, насколько две выборки независимы друг от друга. Здесь предполагается, что наблюдения следуют нормальному распределению без какого-либо изменения дисперсии.
Проверяет, существенно ли различаются средние значения двух или более независимых выборок.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
- Наблюдения в каждой выборке распределены нормально.
- Наблюдения в каждой выборке имеют одинаковую дисперсию.
Интерпретация
- H0: средние значения выборок равны.
- H1: одно или несколько средних значений выборок не равны.
Код Python
из scipy.stats импортировать f_oneway
data1, data2, … = …
stat, p = f_oneway (data1, data2, …)
пример
t-критерий Стьюдента
Проверяет, существенно ли различаются средние значения двух независимых выборок.
Наблюдения в каждой выборке независимы и одинаково распределены (iid). Наблюдения в каждой выборке распределены нормально. Наблюдения в каждой выборке имеют одинаковую дисперсию.
Проверяет, существенно ли различаются средние значения двух парных выборок.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
- Наблюдения в каждой выборке распределены нормально.
- Наблюдения в каждой выборке имеют одинаковую дисперсию.
- Наблюдения по каждой выборке парные.
Интерпретация
- H0: средние значения выборок равны.
- H1: средние значения выборок не равны.
код питона
из scipy.stats импортировать ttest_ind
data1, data2 = …
stat, p = ttest_ind(data1, data2)
Пример
Тест Шапиро-Уилка
Этот тест используется для проверки того, имеют ли выборочные данные распределение Гаусса.
Проверяет, имеет ли выборка данных распределение Гаусса.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
Интерпретация
- H0: выборка имеет распределение Гаусса.
- H1: выборка не имеет распределения Гаусса.
Код Python
из scipy.stats импортировать shapiro
data1 = ….
stat, p = shapiro(данные)
Пример
K²-тест Д’Агостино
Подобно тесту Шапиро-Уилка, он также используется для проверки распределения по Гауссу в выборках данных.
Проверяет, имеет ли выборка данных распределение Гаусса.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
Интерпретация
- H0: выборка имеет распределение Гаусса.
- H1: выборка не имеет распределения Гаусса.
Код Python
из scipy.stats import normaltest
data1 = ….
stat, p = normaltest(data)
Пример
Коэффициент корреляции Пирсона
Статистический тест для проверки корреляции между двумя выборками и наличия у них линейной зависимости.
Проверяет, имеют ли две выборки линейную зависимость.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
- Наблюдения в каждой выборке распределены нормально.
- Наблюдения в каждой выборке имеют одинаковую дисперсию.
Интерпретация
- H0: две выборки независимы.
- H1: существует зависимость между образцами.
Код Python
из scipy.stats импортировать pearsonr
data1, data2 = …
corr, p = pearsonr(data1, data2)
Ранговая корреляция Спирмена
Предполагается, что наблюдения в каждой выборке могут быть ранжированы для проверки того, является ли связь монотонной или нет.
Проверяет, имеют ли две выборки монотонную связь.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
- Наблюдения в каждой выборке можно ранжировать.
Интерпретация
- H0: две выборки независимы.
- H1: существует зависимость между образцами.
Код Python
из scipy.stats import spearmanr
data1, data2 = …
corr, p = spearmanr(data1, data2)
U-тест Манна-Уитни
Непараметрический статистический тест гипотезы для проверки независимых выборок и определения того, равны ли распределения или нет.
Проверяет, равны ли распределения двух независимых выборок.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
- Наблюдения в каждой выборке можно ранжировать.
Интерпретация
- H0: распределения обеих выборок равны.
- H1: распределения обеих выборок не равны.
Код Python
from scipy.stats import mannwhitneyu
data1, data2 = ...
stat, p = mannwhitneyu(data1, data2)
Пример
H-тест Крускала-Уоллиса
Как и предыдущие тесты, тест гипотезы Крускала-Уоллиса также делает те же предположения относительно распределения и ранжирования наблюдений в каждой выборке. И тест проводится для проверки независимости наблюдений друг от друга.
Проверяет, равны ли распределения двух или более независимых выборок.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
- Наблюдения в каждой выборке можно ранжировать.
Интерпретация
- H0: распределения всех выборок равны.
- H1: распределения одной или нескольких выборок не равны.
Код Python
from scipy.stats import kruskal
data1, data2, ... = ...
stat, p = kruskal(data1, data2, ...)
Пример
Тест Фридмана
Тест Фридмана проверяет, равны ли распределения двух или более парных выборок.
Проверяет, равны ли распределения двух или более парных выборок.
Предположения
- Наблюдения в каждой выборке независимы и одинаково распределены (iid).
- Наблюдения в каждой выборке можно ранжировать.
- Наблюдения по каждой выборке парные.
Интерпретация
- H0: распределения всех выборок равны.
- H1: распределения одной или нескольких выборок не равны.
Код Python
from scipy.stats import friedmanchisquare
data1, data2, ... = ...
stat, p = friedmanchisquare(data1, data2, ...)
Пример