Метод norm.ppf()
берет процент и возвращает множитель стандартного отклонения, для которого значение этого процента происходит.
Это эквивалентно «тесту с одним хвостом» на графике плотности.
Из scipy.stats.norm:
ppf (q, loc = 0, масштаб = 1) Функция точки процента (обратная к cdf - процентилям).
Стандартное нормальное распределение
Код:
norm.ppf(0.95, loc=0, scale=1)
Возвращает 95% -ный интервал значимости для теста с одним хвостом для стандартного нормального распределения (т.е. особый случай нормального распределения, где среднее значение равно 0, а стандартное отклонение равно 1).
Наш пример
Чтобы вычислить значение для предоставленного OP примера, в котором лежит наш 95% -ный интервал значимости (Для one- тест хвоста ) мы будем использовать:
norm.ppf(0.95, loc=172.7815, scale=4.1532)
Это вернет значение (которое функционирует как «множитель стандартного отклонения» ), где 95% точки данных будут содержаться, если наши данные будут нормальным распределением.
Чтобы получить точное число , мы берем вывод norm.ppf()
и m в конечном итоге мы используем стандартное отклонение для рассматриваемого распределения.
Двусторонний критерий
Если нам нужно рассчитать критерий с двумя хвостами (т.е. Если значения больше ( и меньше нашего среднего значения), то нам нужно разделить значение (т.е. наше альфа-значение) , поскольку мы все еще используем метод вычисления для одного хвоста . Разделение пополам символизирует уровень значимости, присваиваемый обоим хвостам. Уровень значимости 95% имеет альфа 5%; разделение 5% альфа по обоим хвостам возвращает 2,5%. Взятие 2,5% из 100% возвращает 97,5% в качестве входных данных для уровня значимости.
Поэтому, если бы мы имели дело со значениями по обе стороны от нашего среднего значения, наш код должен был бы ввести 0,975, чтобы представить 95-процентный уровень значимости через два хвоста:
norm.ppf(0.975, loc=172.7815, scale=4.1532)
Граница ошибки
Граница ошибки - это уровень значимости, используемый при оценке параметра совокупности с выборочной статистикой c. Мы хотим сгенерировать наш 95% доверительный интервал , используя двусторонний вход до norm.ppf()
, так как нас интересуют значения, которые больше и меньше нашего среднего значения:
ppf = norm.ppf(0.975, loc=172.7815, scale=4.1532)
Далее мы бы взяли ppf и умножили его на наше стандартное отклонение, чтобы получить значение интервала:
interval_value = std * ppf
Наконец, мы отметили бы доверительные интервалы, добавив и вычтя значение интервала из среднего значения:
lower_95 = mean - interval_value
upper_95 = mean + interval_value
Участок с вертикальной линией:
_ = plt.axvline(lower_95, color='r', linestyle=':')
_ = plt.axvline(upper_95, color='r', linestyle=':')