Можно ли t-тест использовать для ненормальных распределений

«Можно ли t-тест использовать для ненормальных распределений» — вопрос из категории Статистика и теория вероятностей, который задают на 33% собеседований Аналитик Данных. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, но с осторожностью и при определенных условиях.

Когда можно:

  • При больших выборках (n > 30) благодаря центральной предельной теореме — выборочные средние будут нормально распределены
  • Для умеренно ненормальных данных t-тест достаточно устойчив (robust), особенно при равных размерах групп

Когда нельзя:

  • При малых выборках с сильной асимметрией или выбросами
  • Для тяжелохвостых распределений (например, экспоненциальных)

Альтернативы:

  • Непараметрические тесты (Манна-Уитни, Вилкоксона)
  • Bootstrap
  • Преобразование данных (логарифмирование)
# Проверка нормальности перед t-тестом
from scipy import stats
stat, p = stats.shapiro(data)
if p > 0.05:
    t_test = stats.ttest_ind(group1, group2)
else:
    u_test = stats.mannwhitneyu(group1, group2)