Тестирование гипотезы является общепринятой методикой рисования выводов о генеральной совокупности на основе статистических данных от выборки.
Как пример, предположите, что кто-то говорит, что в определенное время в Массачусетсе средняя стоимость галлона обычного неэтилированного газа составляла 1,15$. Как вы могли определить истину оператора? Вы могли попытаться найти цены на каждой автозаправочной станции в состоянии в то время. Тот подход был бы категоричным, но это могло быть длительным, дорогостоящим, или даже невозможным.
Более простой подход должен был бы найти цены в небольшом количестве случайным образом выбранных автозаправочных станций вокруг состояния, и затем вычислить демонстрационное среднее значение.
Демонстрационные средние значения отличаются друг от друга случайно изменчивость в процессе выбора. Предположим, что ваше демонстрационное среднее значение выходит, чтобы быть 1,18$. Действительно ли различием за 0,03$ является артефакт случайной выборки или значительного доказательства, что средняя стоимость галлона газа была на самом деле больше, чем 1,15$? Тестирование гипотезы является статистическим методом для того, чтобы принять такие решения.
Этот пример показывает, как использовать тестирование гипотезы, чтобы анализировать цены на газ, измеренные через Массачусетс в течение двух отдельных месяцев.
Этот пример использует данные о цене на газ в файле gas.mat
. Файл содержит две случайных выборки цен на галлон газа вокруг Массачусетса в 1 993. Первая выборка, price1
, содержит 20 случайных наблюдений вокруг состояния в один день в январе. Вторая выборка, price2
, содержит 20 случайных наблюдений вокруг состояния один месяц спустя.
load gas
prices = [price1 price2];
Как первый шаг, вы можете хотеть протестировать предположение, что выборки прибывают из нормальных распределений. График нормального распределения дает быструю идею.
normplot(prices)
Оба рассеяния приблизительно следуют за прямыми линиями через первые и третьи квартили выборок, указывая на аппроксимированные нормальные распределения. Февральская выборка (правая строка) показывает небольшое отклонение от нормальности в более низком хвосте. Сдвиг в среднем значении с января по февраль очевиден. Тест гипотезы используется, чтобы определить количество теста нормальности. Поскольку каждая выборка является относительно маленькой, тест Lilliefors рекомендуется.
lillietest(price1)
ans = 0
lillietest(price2)
ans = 0
Уровень значения по умолчанию lillietest
составляет 5%. Логический ноль, возвращенный каждым тестом, указывает на отказ отклонить нулевую гипотезу, что выборки нормально распределены. Этот отказ может отразить нормальность в генеральной совокупности, или это может отразить отсутствие убедительных доказательств против нулевой гипотезы из-за размера небольшой выборки.
Теперь вычислите демонстрационные средние значения.
sample_means = mean(prices)
sample_means = 1×2
115.1500 118.5000
Вы можете хотеть протестировать нулевую гипотезу, что средняя цена через состояние в день январской выборки составляла 1,15$. Если вы знаете, что стандартное отклонение в ценах через состояние имеет исторически, и последовательно, 0,04$, то z-тест является соответствующим.
[h,pvalue,ci] = ztest(price1/100,1.15,0.04)
h = 0
pvalue = 0.8668
ci = 2×1
1.1340
1.1690
Логический вывод h
= 0 указывает на отказ отклонить нулевую гипотезу на уровне значения по умолчанию 5%. Это - последствие высокой вероятности по нулевой гипотезе, обозначенной p значением, наблюдения значения как экстремальное значение или более экстремальный из z-статистической-величины, вычисленной из выборки. 95%-й доверительный интервал на среднем значении [1.1340 1.1690] включает предполагавшееся среднее значение генеральной совокупности 1,15$.
Более поздняя выборка предлагает более сильное доказательство для отклонения нулевой гипотезы в масштабе штата средней стоимости 1,15$ в феврале? Сдвиг, показанный в графике вероятности и различии в вычисленных демонстрационных средних значениях, предлагает это. Сдвиг может указать на значительное колебание рынка, вызывающего вопросы о валидности использования исторического стандартного отклонения. Если известное стандартное отклонение не может быть принято, t-тест более соответствующий.
[h,pvalue,ci] = ttest(price2/100,1.15)
h = 1
pvalue = 4.9517e-04
ci = 2×1
1.1675
1.2025
Логический вывод h
= 1 указывает на отклонение нулевой гипотезы на уровне значения по умолчанию 5%. В этом случае 95%-й доверительный интервал на среднем значении не включает предполагавшееся среднее значение генеральной совокупности 1,15$.
Вы можете хотеть исследовать сдвиг в ценах немного более тесно. Функциональный ttest2
тестирует, если две независимых выборки прибывают из нормальных распределений с равными но неизвестными стандартными отклонениями и тем же средним значением против альтернативы, что средние значения неравны.
[h,sig,ci] = ttest2(price1,price2)
h = 1
sig = 0.0083
ci = 2×1
-5.7845
-0.9155
Нулевая гипотеза отклоняется на 5%-м уровне значения по умолчанию, и доверительный интервал на различии средних значений не включает предполагавшееся значение 0. С пазами диаграмма является другим способом визуализировать сдвиг.
boxplot(prices,1) h = gca; h.XTick = [1 2]; h.XTickLabel = {'January','February'}; xlabel('Month') ylabel('Prices ($0.01)')
График отображает распределение выборок вокруг их медиан. Высоты меток в каждом поле вычисляются так, чтобы бок о бок поля имели неперекрывающиеся метки, когда их медианы отличаются на 5%-м уровне значения по умолчанию. Вычисление основано на предположении о нормальности в данных, но сравнение довольно устойчиво для других дистрибутивов. Бок о бок графики обеспечивают своего рода визуальный тест гипотезы, сравнивая медианы, а не средние значения. График выше, кажется, едва отклоняет нулевую гипотезу равных медиан.
Непараметрический тест суммы ранга Wilcoxon, реализованный функциональным ranksum
, может использоваться, чтобы определить количество теста равных медиан. Это тестирует, если две независимых выборки прибывают из непрерывного идентичного (не обязательно нормальный) дистрибутивы с равными медианами против альтернативы, что у них нет равных медиан.
[p,h] = ranksum(price1,price2)
p = 0.0095
h = logical
1
Тест отклоняет нулевую гипотезу равных медиан на 5%-м уровне значения по умолчанию.
boxplot
| lillietest
| normplot
| ttest
| ttest2
| ztest