Статистические тестирования: для чего они нужны и как их проводить
Анализ данных • 24 июля 2024 • 5 мин чтения
Статистические тестирования: для чего они нужны и как их проводить
Аналитики данных помогают бизнесу находить неочевидные закономерности и проверять гипотезы с помощью статистических тестов. Рассказываем, в чём их суть и как их проводят.
Аналитики данных применяют в работе три раздела статистики:
1. Описательная статистика. Используется для описания характеристик набора данных. Есть, например, среднее, медиана, стандартное отклонение.
2. Корреляционный анализ. Статистический метод, с помощью которого исследуют взаимосвязи между наборами данных. При этом не всегда отсутствие корреляции значит, что связи нет, и наоборот.
3. Индуктивная статистика. Помогает делать выводы о популяции на основе выборок. Сюда как раз относят статистические тестирования.
Научиться решать задачи бизнеса с помощью статистики можно на курсе Практикума «Аналитик данных». После окончания учёбы студенты смогут проводить тестирования, создавать дашборды и рассчитывать ключевые метрики компании.
Вернёмся к статистическим тестам: они помогают определить, насколько важны различия между выборками. Выборка — это часть генеральной совокупности, которую ещё называют всей совокупностью объектов, или популяцией. Выборка должна быть репрезентативной, то есть обладать характеристиками генеральной совокупности. Например, генсовокупность — все люди, которые покупали что-то в интернете, а выборка — это 1000 случайных людей из всех тех, кто приобретал что-то онлайн.
Разберём суть статистических тестов на примере тестирования медицинского препарата. Пример упрощён: в реальности в таких тестах используют двойной слепой метод, когда участники и исследователи не знают деталей эксперимента до его окончания.
Есть две группы людей, которые принимали новые таблетки для повышения уровня IQ. Прежде чем проводить тест, необходимо выдвинуть гипотезу. Результаты теста покажут, подтверждается она или нет. Статистические гипотезы обычно делятся на две: нулевую и альтернативную.
При проведении статистического теста аналитик обычно начинает с предположения, что нулевая гипотеза верна, и пытается опровергнуть её. Если полученные данные не согласуются с нулевой гипотезой, аналитик принимает альтернативную гипотезу. При этом даже когда результат подтверждает нулевую гипотезу, это не обязательно означает, что она верна, — всегда существует вероятность ошибки.
Есть два типа ошибок:
1. Ошибка первого рода. В результате теста нулевую гипотезу не принимают, но на самом деле она верна.
2. Ошибка второго рода. Нулевую гипотезу принимают, но на самом деле она не верна.
Результат теста должен быть статистически значимым — то есть он с высокой вероятностью не случаен и отражает реальную ситуацию. Статистическую значимость в аналитике данных обозначают показателем p-value. Ещё существует уровень значимости alpha — вероятность ошибки первого рода, когда есть риск отвергнуть истинную нулевую гипотезу. Обычно аналитики используют значение alpha 0,05 (5%), для повышения точности иногда берут 0,01 (1%).
Виды статистических тестов различают по особенностям данных, которые нужно протестировать, и целям тестирования. Разберём подробнее два типа: параметрические и непараметрические.
Параметрические тесты предполагают, что данные распределяются по определённому шаблону. Часто это нормальное (или Гауссово) распределение — в виде колокола. Если изобразить его на графике, большинство значений сосредоточено вокруг среднего, а крайние значения встречаются редко.
Продолжим пример с IQ. Распределение коэффициента интеллекта нормальное, то есть среднее значение IQ всех людей стремится к 100. Поэтому проверка действия таблеток для ума — это параметрический тест. Препарат дают членам тестовой выборки и анализируют результаты на основе средних значений.
Распределение уровня IQ в человеческой популяции стремится к нормальному
Параметрические тесты используют в разных областях, например:
● в медицине, когда нужно проверить эффективность новых препаратов;
● на производстве, когда нужно исследовать материалы на прочность;
● в экологии — для анализа изменения температуры или загрязнения окружающей среды;
● в образовании — для сравнения разных методик обучения.
В непараметрических тестах нет предположений о распределении данных. То есть нет среднего значения, на основе которого можно анализировать результаты статистических тестирований. Это бывает, например, когда объём выборки слишком мал, когда данные неоднородны или в них есть «выбросы» — значения, которые сильно отклоняются от общего распределения.
Представим, что компания производит бытовую технику и хочет узнать, насколько довольны её клиенты качеством нового продукта — робота-пылесоса. Компания проводит опрос среди тех, кто уже приобрёл этот продукт.
После проведения опроса получаются две группы данных: отзывы от клиентов, которые приобрели робот-пылесос через интернет-магазин, и отзывы от клиентов, которые купили его в обычном розничном магазине.
Компания хочет сравнить эти группы отзывов, чтобы понять, есть ли существенные различия в уровне удовлетворённости клиентов в зависимости от канала покупки. Но данные могут не соответствовать нормальному распределению, поскольку отзывы — это субъективные оценки. Тогда аналитики используют непараметрический тест.
Показать методы статистического тестирования можно на трёх вариантах параметрического t-теста — это одни из самых часто используемых методов в аналитике данных.
Независимый t-тест (двухвыборочный t-тест) используют для сравнения средних значений двух независимых групп. Он помогает определить, есть ли статистически значимые различия между ними.
Например, отличаются ли средние оценки за тест у двух групп студентов.
● H0: средние оценки групп студентов равны.
● H1: средние оценки не равны.
Вот как выглядит код статистического тестирования:
import numpy as np
from scipy import stats
# Данные выборки для двух групп
group1 = [72, 68, 75, 70, 71, 74, 69, 70, 72, 68]
group2 = [78, 82, 85, 90, 86, 79, 84, 80, 83, 88]
# Проведение независимого t-теста
t_stat, p_value = stats.ttest_ind(group1, group2)
# Вывод результатов
print("t-статистика:", t_stat)
print("p-значение:", p_value)
# Интерпретация результатов
alpha = 0.05
if p_value < alpha:
print("Отклоняем нулевую гипотезу: средние значения различаются")
else:
print("Не отклоняем нулевую гипотезу: средние значения не различаются")
Парный t-тест подходит для сравнения средних значений двух связанных выборок. Например, когда измерения проводили на одних и тех же объектах до и после вмешательства или в разных условиях.
Мы хотим проверить, изменились ли оценки студентов после прохождения курса подготовки.
● H0: средняя оценка студентов не изменилась после курса.
● H1: средняя оценка студентов изменилась после курса.
Вот как выглядит код статистического тестирования:
import numpy as np
from scipy import stats
# Данные для двух условий (до и после курса подготовки)
before = [72, 68, 75, 70, 71, 74, 69, 70, 72, 68]
after = [78, 82, 85, 90, 86, 79, 84, 80, 83, 88]
# Проведение парного t-теста
t_stat, p_value = stats.ttest_rel(before, after)
# Вывод результатов
print("t-статистика:", t_stat)
print("p-значение:", p_value)
# Интерпретация результатов
alpha = 0.05
if p_value < alpha:
print("Отклоняем нулевую гипотезу: средние значения различаются")
else:
print("Не отклоняем нулевую гипотезу: средние значения не различаются")
С помощью одновыборочного t-теста (или одновыборочного теста Стьюдента) можно проверить гипотезы о том, что среднее значение выборки соответствует известному значению или эталону. Например, мы хотим проверить, отличается ли средняя оценка выборки студентов от известного значения 90.
● H0: средняя оценка выборки равна 90.
● H1: средняя оценка выборки не равна 90.
Вот как выглядит код статистического тестирования:
import numpy as np
from scipy import stats
# Данные выборки
data = [72, 68, 75, 70, 71, 74, 69, 70, 72, 68]
# Известное среднее значение
mu_0 = 90
# Проведение одновыборочного t-теста
t_stat, p_value = stats.ttest_1samp(data, mu_0)
# Вывод результатов
print("t-статистика:", t_stat)
print("p-значение:", p_value)
# Интерпретация результатов
alpha = 0.05
if p_value < alpha:
print("Отклоняем нулевую гипотезу: среднее значение отличается от 90")
else:
print("Не отклоняем нулевую гипотезу: среднее значение не отличается от 90")
Кроме t-теста, есть и другие параметрические, например ANOVA (Analysis of Variance) — для сравнениях значений, когда выборок больше двух. А вот примеры непараметрических тестов:
● Критерий Манна — Уитни. Проводят для того, чтобы сравнить медианы двух независимых выборок. Например, различаются ли медианные доходы мужчин и женщин в компании.
● χ²-тест (тест хи-квадрат). Применяют для проверки гипотез о зависимости между категориальными переменными. Например, существует ли связь между полом человека и транспортом, на котором он передвигается по городу.
Этапы статистического тестирования могут меняться — всё зависит от метода и цели анализа. Но можно выделить несколько основных шагов, по которым проводят такие тесты. Разберём их на примере эксперимента с препаратом для повышения уровня IQ.
1. Формулировка гипотезы. Нужно сформулировать гипотезу, которую хочется проверить.
● Нулевая гипотеза: после принятия таблеток IQ в выборке не изменился.
● Альтернативная гипотеза: после принятия таблеток IQ в выборке статистически значимо изменился.
2. Выборка. Определяем, какой размер выборки нужен для проверки гипотезы. Например, сколько людей необходимо протестировать после приёма препарата. Это число считают по формулам, таблицам или с помощью специальных калькуляторов, которые есть в открытом доступе.
3. Подготовка данных. После сбора данных нужно убедиться, что они подходят для анализа. Например, почистить их от ошибок или преобразовать в нужный формат.
4. Выбор типа теста. В случае с медицинским экспериментом подойдёт параметрический парный t-тест. Мы сравниваем значения двух зависимых выборок — это участники эксперимента до приёма таблеток и после.
5. Статистический анализ. Нужно рассчитать статистические показатели и p-value. Если p-value меньше показателя alpha, можно отвергнуть нулевую гипотезу и принять альтернативную.
6. Интерпретация результатов. После проведения анализа нужно проанализировать полученные результаты. Представим, что после исследования мы приняли альтернативную гипотезу — таблетки работают.
Статистические тесты помогают компаниям проверять гипотезы и получать инсайты. Но для этого нужно правильно определить выборку, подготовить данные и проанализировать результаты
Совет эксперта
Читать также: