Как выполнить t-тест с двумя выборками в python
Двухвыборочный t-критерий используется для проверки того, равны ли средние значения двух совокупностей или нет.
В этом руководстве объясняется, как выполнить t-тест с двумя выборками в Python.
Пример: два примера t-теста на Python
Исследователи хотят знать, имеют ли два разных вида растений одинаковую среднюю высоту. Чтобы проверить это, они собирают простую случайную выборку из 20 растений каждого вида.
Выполните следующие шаги, чтобы выполнить t-критерий с двумя выборками, чтобы определить, имеют ли два вида растений одинаковую высоту.
Шаг 1: Создайте данные.
Сначала мы создадим две таблицы для хранения измерений для каждой группы из 20 растений:
import numpy as np group1 = np.array([14, 15, 15, 16, 13, 8, 14, 17, 16, 14, 19, 20, 21, 15, 15, 16, 16, 13, 14, 12]) group2 = np.array([15, 17, 14, 17, 14, 8, 12, 19, 19, 14, 17, 22, 24, 16, 13, 16, 13, 18, 15, 13])
Шаг 2. Выполните t-тест для двух выборок.
Далее мы воспользуемся функцией ttest_ind() из библиотеки scipy.stats для выполнения t-теста с двумя примерами, который использует следующий синтаксис:
ttest_ind (a, b,qual_var=True)
Золото:
- а: таблица примеров наблюдений для 1 группы
- б: таблица примеров наблюдений для 2 группы
- Equal_var: Если это правда, выполните стандартный независимый t-критерий с двумя выборками, который предполагает равные дисперсии генеральной совокупности. Если ложь, выполните t-критерий Уэлча , который не предполагает равные дисперсии генеральной совокупности. Это верно по умолчанию.
Прежде чем проводить тест, нам нужно решить, будем ли мы предполагать, что две популяции имеют равные дисперсии. Как правило, мы можем предположить, что популяции имеют равные дисперсии, если отношение наибольшей выборочной дисперсии к наименьшей выборочной дисперсии меньше 4:1.
#find variance for each group
print(np.var(group1), np.var(group2))
7.73 12.26
Отношение наибольшей выборочной дисперсии к наименьшей выборочной дисперсии составляет 12,26/7,73 = 1,586 , что меньше 4. Это означает, что мы можем предположить, что дисперсии генеральной совокупности равны.
Таким образом, мы можем приступить к выполнению двухвыборочного t-теста с равными дисперсиями:
import scipy.stats as stats #perform two sample t-test with equal variances stats.ttest_ind(a=group1, b=group2, equal_var=True) (statistic=-0.6337, pvalue=0.53005)
Статистика t-теста равна -0,6337 , а соответствующее двустороннее значение p составляет 0,53005 .
Шаг 3: Интерпретируйте результаты.
Два предположения для этого конкретного двухвыборочного t-теста:
H 0 : µ 1 = µ 2 (два средних значения совокупности равны)
H A : µ 1 ≠ µ 2 (два средних значения совокупности не равны)
Поскольку значение p нашего теста (0,53005) больше, чем альфа = 0,05, мы не можем отвергнуть нулевую гипотезу теста. У нас нет достаточных доказательств, чтобы сказать, что средняя высота растений между двумя популяциями различна.
Дополнительные ресурсы
Как выполнить одновыборочный T-тест в Python
Как выполнить T-тест парных выборок в Python