Статистика. Часть 3. Проверка гипотез

Tags: math , learning , обучение , математика , statistics , статистика

Published 3 августа 2025 г. 18:04

Приветствую всех в этом увлекательном путешествии по миру статистики и сегодня мы рассмотрим один из важнейших моментов в статистике - проверка гипотез. Ведь мы используем наши статистические показатели для какой-то цели, чтобы сделать вывод на основе наших данных. Хотя конечно можно использовать танцы с бубном, но мы всё же хотим подкрепить наши выводы чем-то более существенным, чем мистические образы в дыму курительной травки 🙃.

Итак, мы собрали какую-то статистику и что же дальше? Давайте рассмотрим пример на наших данных по продолжительности жизни. Для начала нам необходимо выдвинуть нулевую гипотезу об одном из параметров наших данных. Например, наша гипотеза будет заключаться в том, что продолжительность жизни в странах Европы равна продолжительности жизни в странах Азии (сомнительно, но окей). Альтернативная гипотеза заключается в том, что они не равны.

Строго говоря, мы занимаемся проверкой статистичской гипотезы -  гипотезы о законе распределения статистической совокупности  либо о числовых параметрах известных  распределений (mathprofi в помощь). В данном случае мы будем сравнивать средние значения наших данных (продолжительность жизни в Европе и Азии). 

Чтобы статистики не закидали нас шапками, нам сперва нужно проверить, что обе наших выборки имеют нормальное распределение. Оно по форма напоминает колокол, так что ошибиться будет сложно 🙂.

Так как мы любим картинки, то сделаем проверку с помощью графиков.

 

# Загрузим данные о продолжительности жизни в Азии и Европе в 2007 году

 

import plotly.express as px

 

df = px.data.gapminder()

data_2007 = df[df["year"] == 2007]

 

life_asia = data_2007[data_2007["continent"] == "Asia"]["lifeExp"].tolist()

life_europe = data_2007[data_2007["continent"] == "Europe"]["lifeExp"].tolist()

 

# А теперь рисуночки)

import matplotlib.pyplot as plt

 

plt.hist(life_europe, bins=10, alpha=0.6, label='Europe')

plt.hist(life_asia, bins=10, alpha=0.6, label='Asia')

plt.title('Распределение ожидаемой продолжительности жизни')

plt.xlabel('Ожидаемая продолжительность жизни')

plt.ylabel('Частота')

plt.legend()

plt.grid(True)

plt.show()

Что-то это мало нам говорит о распределении, давайте построим Q-Q диаграмму (для этого используем пакет scipy):
 

import scipy.stats as stats

 

stats.probplot(life_europe, dist="norm", plot=plt)

plt.title("Q-Q Plot - Europe")

plt.show()

 

stats.probplot(life_asia, dist="norm", plot=plt)

plt.title("Q-Q Plot - Asia")

plt.show()

 

Если наши точки находятся достаточно близко к прямой, то распределение можно считать нормальным. Как мы видим, наши распределения можно назвать нормальными (по Европе это можно сделать с натяжкой, но можно🙂). 

Итак, у нас есть гипотезы для проверки, но что будет, если мы ошибемся?

Мем: "ЛУЧШЕ ОШИБКА ПЕРВОГО РОДА ЧЕМ ОШИБКА ВТОРОГО РОДА" - Все шаблоны -  Meme-arsenal.com

Если мы примем мы отвергнем нашу нулевую гипотезу при том, что она была истинна, то такая ошибка называется ошибкой первого рода. Если же мы принимаем нулевую гипотезу при том, что альтернативная гипотеза верна, то такая ошибка назвается ошибкой 2 рода. В зависимости от ситуации последствия ошибок 1 и 2 рода различны по степени тяжести, так что тут решать вам, какая из них будет страшнее (°ー°〃).

ОСНОВЫ СТАТИСТИКИ

Например сейчас август 2025, в конце ноября ученые астрофизики обещают прибытие инопланетян и нулевая гипотеза говорит о том, что этого не случится. Но что если альтернативная гипотеза окажется верной....┗|`O′|┛⚆_⚆.

Однако, даже когда мы принимаем верную гипотезу, это не значит, что она будет выполняться всегда! Это говорит лишь о том, что с высокой долей вероятности данная гипотеза будет выполняться для генеральной совокупности данных. То есть это совсем не значит, что наша отвергнутая гипотеза не будет выполняться совсем! Даааа, статистика штука интересная, к такому надо привыкнуть).

Кажется, сегодня мы рассмотрели достаточно материала для разминки наших серых клеточек). В следующей статье разберемся с статистической важностью, критериями выбора теста для проверки гипотез и, наконец, проверку гипотез на Python! Stay tuned!


Похожие публикации

Статистика. Часть 2. Меры рассеивания (measures of dispersion)

Статистика. Часть 1. Основные понятия и показатели.