Статистика - Гипотеза, проверяющая пропорцию
Пропорция совокупности - это доля совокупности, которая принадлежит к определенной категории.
Тесты гипотез используются для проверки утверждения о размере этой доли совокупности.
Гипотеза, проверяющая пропорцию
Для проверки гипотез используются следующие шаги:
- Проверить условия
- Определить претензии
- Определить уровень значимости
- Рассчитать статистику теста
- Заключение
Например:
- Совокупность: Лауреаты Нобелевской премии
- Категория: Рожденные в Соединенных Штатах Америки.
И мы хотим проверить претензию:
"Более чем 20% лауреатов Нобелевской премии родились в США"
Взяв выборку из 40 случайно выбранных лауреатов Нобелевской премии, мы смогли обнаружить, что:
10 из 40 нобелевских лауреатов в выборке родились в США.
Тогда пропорция выборки будет: \(\displaystyle \frac{10}{40} = 0.25\), или 25%.
По этим выборкам данных мы проверяем претензию, выполнив следующие действия:
1. Проверка условий
Условиями расчета доверительного интервала для доли являются:
- Выборка произведена случайным образом
- Есть только два варианта:
- Находится в категории
- Не в категории
- Для выборки требуется как минимум:
- 5 участников в категории
- 5 участников не в категории
В нашем примере мы случайным образом выбрали 10 человек, родившихся в США.
Остальные не родились в США, поэтому 30 из них принадлежат к другой категории.
В этом случае условия выполняются
Примечание: Можно провести проверку гипотез, не имея по 5 человек из каждой категории. Но необходимо внести особые корректировки.
2. Определение претензий
Нам нужно определить нулевую гипотезу (\(H_{0}\)) и альтернативную гипотезу (\(H_{1}\)) на основе утверждения, которое мы проверяем.
Претензия была:
"Более чем 20% лауреатов Нобелевской премии родились в США".
В этом случае параметр представляет собой долю лауреатов Нобелевской премии, родившихся в США (\(p\)).
Тогда нулевая и альтернативная гипотеза:
Нулевая гипотеза: 20% лауреатов Нобелевской премии родились в США.
Альтернативная гипотеза: Более, чем 20% лауреатов Нобелевской премии родились в США.
Что можно выразить символами как:
\(H_{0}\): \(p = 0.20 \)
\(H_{1}\): \(p > 0.20 \)
Это "правосторонний" тест, поскольку альтернативная гипотеза утверждает, что пропорция больше, чем в нулевой гипотезе.
Если данные подтверждают альтернативную гипотезу, мы отклоняем нулевую гипотезу и принимаем альтернативную гипотезу.
3. Определение уровня значимости
Уровень значимости (\(\alpha\)) - это неопределённость, которую мы принимаем при отклонении нулевой гипотезы в проверке гипотез.
Уровень значимости - это процентная вероятность случайного ошибочного вывода.
Типичные уровни значимости:
- \(\alpha = 0.1\) (10%)
- \(\alpha = 0.05\) (5%)
- \(\alpha = 0.01\) (1%)
Более низкий уровень значимости означает, что доказательства в данных должны быть более убедительными, чтобы отвергнуть нулевую гипотезу.
Не существует "правильного" уровня значимости - он лишь констатирует неопределенность вывода.
Примечание: 5% уровень значимости означает, что когда мы отклоняем нулевую гипотезу:
Мы ожидаем отклонить истинную нулевую гипотезу в 5 случаях из 100.
4. Расчет статистики теста
Статистика теста используется для определения результата проверки гипотезы.
Статистика теста - это стандартизованное значение, вычисленное по выборке.
Формула для тестовой статистики (TS) доли населения:
\(\displaystyle \frac{\hat{p} - p}{\sqrt{p(1-p)}} \cdot \sqrt{n} \)
\(\hat{p}-p\) - это разница между пропорцией выборки (\(\hat{p}\)) и заявленной пропорцией совокупности (\(p\)).
\(n\) - размер выборки.
В нашем примере:
Заявленная (\(H_{0}\)) доля совокупности (\(p\)) была \( 0.20 \)
Доля выборки (\(\hat{p}\)) была 10 из 40, или: \(\displaystyle \frac{10}{40} = 0.25\)
Размер выборки (\(n\)) был \(40\)
Таким образом, тестовая статистика (TS) тогда:
\(\displaystyle \frac{0.25-0.20}{\sqrt{0.2(1-0.2)}} \cdot \sqrt{40} = \frac{0.05}{\sqrt{0.2(0.8)}} \cdot \sqrt{40} = \frac{0.05}{\sqrt{0.16}} \cdot \sqrt{40} \approx \frac{0.05}{0.4} \cdot 6.325 = \underline{0.791}\)
Вы также можете рассчитать статистику теста, используя функции языка программирования:
Пример
В Python используйте библиотеки scipy и math для вычисления статистики теста для пропорции.
import scipy.stats as stats
import math
# Укажите количество вхождений (x), размер выборки (n) и пропорцию, заявленную в нулевой гипотезе (p)
x = 10
n = 40
p = 0.2
# Рассчитайте долю выборки
p_hat = x/n
# Рассчитайте и распечатайте тестовую статистику
print((p_hat-p)/(math.sqrt((p*(1-p))/(n))))
Попробуйте сами »
Пример
В R используйте встроенную функцию prop.test()
чтобы вычислить статистику теста для пропорции.
# Укажите количество примеров (x), размер выборки (n) и утверждение нулевой гипотезы (p)
x <- 10
n <- 40
p <- 0.20
# Рассчитайте долю выборки
p_hat = x/n
# Рассчитайте и распечатайте тестовую статистику
(p_hat-p)/(sqrt((p*(1-p))/(n)))
Попробуйте сами »
5. Заключение
Существует два основных подхода к заключению проверки гипотез:
- Подход критического значения сравнивает статистику теста с критическим значением уровня значимости.
- Подход P-значения сравнивает P-значение тестовой статистики и уровень значимости.
Примечание: Эти два подхода отличаются только тем, как они представляют заключение.
Подход критических значений
Для подхода критического значения нам нужно найти критическое значение (CV) уровня значимости (\(\alpha\)).
Для теста доли совокупности критическим значением (CV) является Z-значение из стандартного нормального распределения.
Это критическое Z-значение (CV) определяет область отклонения для теста.
Область отклонения - это область вероятности в хвостах стандартного нормального распределения.
Поскольку утверждается, что доля совокупности более чем 20%, область отклонения находится в правом хвосте:
Размер области отклонения определяется уровнем значимости (\(\alpha\)).
Выбрав уровень значимости (\(\alpha\)) 0.05, или 5%, мы можем найти критическое Z-значение из Z-таблицы, или с функцией языка программирования:
Примечание: Функции находят Z-значение для области с левой стороны.
Чтобы найти Z-значение для правого хвоста, нам нужно использовать функцию в области слева от хвоста (1-0.05 = 0.95).
Пример
В Python используйте функцию библиотеки Scipy Stats norm.ppf()
найдите Z-значение для \(\alpha\) = 0.05 в правом хвосте.
import scipy.stats as stats
print(stats.norm.ppf(1-0.05))
Попробуйте сами »
Пример
В R используйте встроенную функцию qnorm()
чтобы найти Z-значение для \(\alpha\) = 0.05 в правом хвосте.
qnorm(1-0.05)
Попробуйте сами »
Используя любой метод, мы можем найти, что критическое Z-значение равно \(\approx \underline{1.6449}\)
Для правостороннего теста нам нужно проверить, не является ли тестовая статистика (TS) больше критического значения (CV).
Если статистика теста больше критического значения, статистика теста находится в области отклонения.
Когда статистика теста находится в области отклонения, мы отклоняем нулевую гипотезу (\(H_{0}\)).
Здесь тестовая статистика (TS) была \(\approx \underline{0.791}\), а критическое значение было \(\approx \underline{1.6449}\)
Вот иллюстрация этого теста в виде графика:
Поскольку статистика теста была меньше критического значения, мы не отклоняем нулевую гипотезу.
Это означает, что выборки данных не подтверждают альтернативную гипотезу.
И мы можем резюмировать вывод о том, что:
Данные выборки не подтверждают утверждение о том, что "более 20 лауреатов Нобелевской премии родились в США" при 5% уровне значимости.
Подход P-значение
Для подхода P-значения нам нужно найти P-значение тестовой статистики (TS).
Если P-значение меньше уровня значимости (\(\alpha\)), мы отклоняем нулевую гипотезу (\(H_{0}\)).
Статистические данные теста оказались равными \( \approx \underline{0.791} \)
Для теста доли совокупности, статистика теста представляет собой Z-значение из стандартного нормального распределения.
Поскольку это правосторонний тест, нам нужно найти P-значение для Z-значения, больше 0,791.
Мы можем найти P-значение с помощью Z-таблицы или с помощью функции языка программирования:
Примечание: Функции находят P-значение (площадь) слева от Z-значения.
Чтобы найти P-значение для правого хвоста, нам нужно вычесть левую область из общей площади: 1 - результат функции.
Пример
В Python используйте функцию библиотеки Scipy Stats norm.cdf()
, чтобы найти P-значение Z-значения больше 0,791:
import scipy.stats as stats
print(1-stats.norm.cdf(0.791))
Попробуйте сами »
Пример
С помощью R используйте встроенную функцию pnorm()
чтобы найти P-значение Z-значения больше 0,791:
1-pnorm(0.791)
Попробуйте сами »
Используя любой метод, мы можем найти, что P-значение равно \(\approx \underline{0.2145}\)
Это говорит нам о том, что уровень значимости (\(\alpha\)) должен быть больше 0,2145 или 21,45%, чтобы отклонить нулевую гипотезу.
Вот иллюстрация этого теста в виде графика:
Это P-значение больше, чем любой из распространённых уровней значимости (10%, 5%, 1%).
Таким образом, нулевая гипотеза сохраняется на всех этих уровнях значимости.
И мы можем резюмировать вывод о том, что:
Выборки данных не поддерживают утверждение о том, что "более, чем 20% лауреатов Нобелевской премии родились в США" при 10%, 5%, или 1% уровне значимости.
Примечание: Возможно, все ещё верно, что реальная доля совокупности превышает 20%.
Но на этой выборке не было достаточно веских доказательств, чтобы подтвердить это.
Расчет P-значения для проверки гипотез с помощью программирования
Многие языки программирования могут вычислять P-значение для определения результата проверки гипотез.
Использование программного обеспечения и программирования для расчета статистики более распространено для больших наборов данных, поскольку вычисление вручную становится затруднительным.
Рассчитанное здесь P-значение покажет нам минимально возможный уровень значимости, при котором нулевая гипотеза может быть отклонена.
Пример
В Python используйте библиотеки scipy и math для вычисления P-значения для проверки гипотезы с правым хвостом для пропорции.
Здесь размер выборки - 40, повторов - 10, а тест - для доли, превышающей 0,20.
import scipy.stats as stats
import math
# Укажите количество вхождений (x), размер выборки (n) и пропорцию, заявленную в нулевой гипотезе (p)
x = 10
n = 40
p = 0.2
# Рассчитайте долю выборки
p_hat = x/n
# Рассчитайте тестовую статистику
test_stat = (p_hat-p)/(math.sqrt((p*(1-p))/(n)))
# Выведите p-значение тестовой статистики (правосторонний тест)
print(1-stats.norm.cdf(test_stat))
Попробуйте сами »
Пример
В R используйте встроенную функцию prop.test()
, чтобы найти P-значение для проверки гипотезы с правым хвостом для пропорции.
Здесь размер выборки - 40, повторов - 10, а тест - для доли, превышающей 0,20.
# Укажите количество примеров (x), размер выборки (n) и утверждение нулевой гипотезы (p)
x <- 10
n <- 40
p <- 0.20
# P-значение из теста пропорции правого хвоста при уровне значимости 0,05
prop.test(x, n, p, alternative = c("greater"), conf.level = 0.95, correct = FALSE)$p.value
Попробуйте сами »
Примечание: conf.level
в коде R является обратным уровню значимости.
Здесь уровень значимости 0,05, или 5%, т.о. conf.level равно 1-0.05 = 0.95, или 95%.
Левосторонние и двусторонние тесты
Это был пример правостороннего теста, в котором альтернативная гипотеза утверждала, что параметр больше, чем утверждение нулевой гипотезы.
Вы можете ознакомиться с аналогичным пошаговым руководством для других типов здесь: