Понимание доверительных интервалов с Python

Исходный узел: 1883080

Эта статья была опубликована в рамках Блогатон по Data Science.

Содержание

  1. Введение
  2. Доверительные интервалы с Z-статистикой
  3. Интерпретация доверительных интервалов
  4. Предположения для CI с использованием z-статистики
  5. Доверительные интервалы с t-статистикой
  6. Предположения для CI с использованием t-статистики
  7. Создание t-интервала с парными данными
  8. Z-значение против t-значения: когда что использовать?
  9. Доверительные интервалы с python
  10. Конечная нота

Введение

Всякий раз, когда мы решаем статистическую задачу, мы озабочены оценкой параметров популяции, но чаще всего расчет параметров популяции практически невозможен. Вместо этого мы берем случайные выборки из населения и вычисляем выборочную статистику, ожидая аппроксимации параметров населения. Но как мы узнаем, являются ли выборки истинными представителями генеральной совокупности или насколько эти выборочные статистические данные отклоняются от параметров генеральной совокупности? Вот тут-то и появляются доверительные интервалы. Так что же это за интервалы? Доверительный интервал — это диапазон значений выше и ниже статистики выборки, или мы также можем определить его как вероятность того, что диапазон значений вокруг статистики выборки содержит истинный параметр генеральной совокупности.

Доверительные интервалы с Z-статистикой

Прежде чем углубиться в тему, давайте познакомимся с некоторыми статистическими терминами.

население: это множество всех подобных индивидуумов. Например, население города, студенты колледжа и т. д.

образец: это небольшой набор похожих людей, взятых из населения. Точно так же случайная выборка - это выборка, взятая случайным образом из населения.

параметры: Среднее (мю), стандартное отклонение (сигма), пропорция (р), полученная из генеральной совокупности.

статистика: среднее значение (x bar), стандартное отклонение (S), пропорции (p^), относящиеся к образцам.

Z-балл: это расстояние любой точки необработанных данных в нормальном распределении от среднего значения, нормализованного стандартным отклонением. Дано: х-мю/сигма

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

предположим, вы живете в городе с населением 100,000 100 человек, и выборы не за горами. Как социолог, вы должны прогнозировать, кто победит на выборах: синяя или желтая партия. Итак, вы видите, что почти невозможно собрать информацию обо всем населении, поэтому вы выбираете случайным образом 62 человек. В конце опроса вы выяснили, что 62% людей собираются проголосовать за желтый цвет. Теперь вопрос в том, должны ли мы заключить, что желтый победит с вероятностью победы 62%, или 58% всего населения будут голосовать за желтый цвет? Ну, ответ НЕТ. Мы точно не знаем, насколько наша оценка далека от истинного параметра, если мы возьмем другую выборку, результат может оказаться 65% или XNUMX%. Итак, вместо этого мы найдем диапазон значений нашей выборочной статистики, который, скорее всего, будет отражать истинную долю населения. Здесь пропорция относится к проценту

Доверительные интервалы с Python

                                                                   изображение принадлежит автору

Теперь, если мы возьмем сотню таких выборок и нанесем на график выборочную долю каждой выборки, мы получим нормальное распределение выборочных долей, а среднее значение распределения будет наиболее приблизительным значением доли совокупности. И наша оценка может лежать где угодно на кривой распределения. В соответствии с правилом 3 сигм мы знаем, что около 95% случайных величин находятся в пределах 2 стандартных отклонений от среднего значения распределения. Таким образом, мы можем сделать вывод, что вероятность того, что p^ находится в пределах 2 стандартных отклонений от p составляет 95%. Или мы можем также заявить, что вероятность того, что p находится в пределах 2 стандартных отклонений ниже и выше p^, также составляет 95%. Эти два утверждения фактически эквивалентны. Эти две точки ниже и выше p^ являются нашими доверительными интервалами.

Доверительные интервалы с Python

                                                           изображение принадлежит автору

Если мы сможем каким-то образом найти сигму, мы сможем вычислить требуемый интервал. Но здесь сигма является параметром генеральной совокупности, и мы знаем, что его часто почти невозможно рассчитать, поэтому вместо этого мы будем использовать выборочную статистику, т.е. стандартную ошибку. Это дается как

где p^= доля выборки, n=количество выборок

ЮВ =√(0.62 . 0.38/100) = 0.05

Итак, 2xSE = 0.1

Доверительный интервал для наших данных составляет (0.62-0.1,0.62+0.1) или (0.52,0.72). Поскольку мы взяли 2xSE, это соответствует 95% доверительному интервалу.

Теперь вопрос в том, что если мы хотим создать доверительный интервал 92%? В предыдущем примере мы умножили 2 на SE, чтобы построить доверительный интервал 95%, это 2 является z-оценкой для доверительного интервала 95% (точное значение равно 1.96), и это значение можно найти из z-таблицы. Критическое значение z для доверительного интервала 92% составляет 1.75. Ссылаться на этой статью для лучшего понимания z-score и z-table.

Интервал задается как: (p^ + z*.SE , p^-z*.SE).

Если вместо пропорции выборки указать среднее значение выборки, стандартная ошибка будет равна сигма/кв.(п). Здесь сигма это стандартное отклонение населения, поскольку мы часто не используем стандартное отклонение выборки вместо этого. Но часто наблюдается, что такой вид оценки, когда среднее значение дается результат, имеет тенденцию быть немного предвзятым. Поэтому в подобных случаях предпочтительнее использовать t-статистику вместо z-статистики.

Общая формула для доверительного интервала с z-статистикой имеет вид

Здесь статистика относится либо к выборочному среднему, либо к выборочной доле. сигмаs стандартное отклонение населения.

Интерпретация доверительных интервалов

Очень важно правильно интерпретировать доверительные интервалы. Рассмотрим предыдущий пример опроса, где мы рассчитали наш 95% доверительный интервал как (0.52,0.62). Что это значит? Что ж, доверительный интервал 95% означает, что если мы возьмем n выборок из совокупности, то в 95% случаев полученный интервал будет содержать истинную долю населения. Помните, что 95-процентный доверительный интервал не означает, что существует 95-процентная вероятность того, что интервал содержит истинную долю населения. Например, для доверительного интервала 90%, если мы возьмем 10 выборок из совокупности, то в 9 из 10 случаев указанный интервал будет содержать истинный параметр совокупности. Посмотрите на картинку ниже для лучшего понимания.

Интерпретация доверительного интервала

                                                            изображение принадлежит автору

Предположения для доверительных интервалов с использованием Z-статистики

Есть определенные предположения, которые нам нужно искать, чтобы построить действительный доверительный интервал с использованием z-статистики.

  1. Случайная выборка: выборки должны быть случайными. Существуют различные методы выборки, такие как стратифицированная выборка, простая случайная выборка, кластерная выборка для получения случайных выборок.
  2. Нормальное условие: данные должны удовлетворять этому условию np^>=10 и n.(1-p^)>=10. По сути, это означает, что наше выборочное распределение средних значений выборки должно быть нормальным, а не перекошенным в обе стороны.
  3. Независимый: выборки должны быть независимыми. Количество выборок должно быть меньше или равно 10% от общей совокупности или если выборка производится с замещением.

Доверительные интервалы с T-статистикой

Что, если размер выборки относительно невелик, а стандартное отклонение генеральной совокупности не задано или не может быть принято допущением? Как построить доверительный интервал? Ну, вот тут-то и появляется t-статистика. Основная формула для нахождения доверительного интервала здесь остается той же, только z* заменено на t*. Общая формула дается

где S = стандартное отклонение выборки, n = количество выборок

Предположим, вы устроили вечеринку и хотите оценить среднее потребление пива вашими гостями. Итак, вы получаете случайную выборку из 20 человек и измеряете потребление пива. Данные выборки симметричны со средним значением 0f 1200 мл и стандартным отклонением 120 мл. Итак, теперь вы хотите построить 95% доверительный интервал.

Итак, у нас есть стандартное отклонение выборки, количество выборок и среднее значение выборки. Все, что нам нужно, это t*. Итак, t* для 95% доверительного интервала со степенью свободы 19(n-1 = 20-1) равно 2.093. Итак, наш требуемый интервал после расчета равен (1256.16, 1143.83) с погрешностью 56.16. Ссылаться на этой видео, чтобы знать, как читать t-таблицу.

Предположения для CI с использованием T-статистики

Как и в случае с z-статистикой, здесь и в случае с t-статистикой есть некоторые условия, которые нам нужно учитывать в данных.

  1. Выборка должна быть случайной
  2. Образец должен быть нормальным. Чтобы быть нормальным, размер выборки должен быть больше или равен 30, или если родительский набор данных, т.е. население, примерно нормальный. Или, если размер выборки меньше 30, то распределение должно быть примерно симметричным.
  3. Отдельные наблюдения должны быть независимыми. Это означает, что следует правило 10% или выборка выполняется с замещением.

Создание T-интервала для парных данных

До сих пор мы использовали только данные одной выборки. Теперь мы увидим, как мы можем построить t-интервал для парных данных. В парных данных мы делаем два наблюдения за одним и тем же человеком. Например, сравнение предтестовых и посттестовых оценок студентов или данные о влиянии препарата и плацебо на группу лиц. В парных данных мы нашли разницу между двумя наблюдениями в 3-м столбце. Как обычно, мы также рассмотрим пример, чтобы понять эту концепцию.

В. Учитель пытался оценить влияние новой учебной программы на результаты теста. Ниже представлены результаты наблюдений.

Интервал T для парных данных

                                                      изображение принадлежит автору

Поскольку мы намерены найти интервалы для средней разницы, нам нужны только статистические данные для различий. Мы будем использовать ту же формулу, что и раньше

статистика +- (критическое значение или t-значение) (стандартное отклонение статистики)

xd = среднее значение разницы, Sd = стандартное отклонение выборки, для 95% доверительного интервала со степенью свободы 5 t* определяется как 2.57. Погрешность = 0.97 и доверительный интервал (4.18,6.13, XNUMX).

Интерпретация: Из приведенных оценок как видно, доверительный интервал не содержит нулевых или отрицательных значений. Таким образом, можно сделать вывод, что новый учебный план положительно сказался на контрольных работах учащихся. Если бы он имел только отрицательные значения, мы могли бы сказать, что учебная программа оказала негативное влияние. Или, если он содержит ноль, тогда может существовать вероятность того, что разница равна нулю или что учебная программа не влияет на результаты теста.

Z-значение против T-значения

Вначале возникает путаница в отношении того, когда что использовать. Эмпирическое правило заключается в том, что когда размер выборки >= 30 и известно, что стандартное отклонение населения использует z-статистику. Если размер выборки <30, используйте t-статистику. В реальной жизни у нас нет параметров совокупности, поэтому мы будем использовать z или t в зависимости от размера выборки.

При меньших выборках (n<30) центральная теорема LImit не применяется, и используется другое распределение, называемое t-распределением Стьюдента. Распределение Стьюдента похоже на нормальное распределение, но принимает разные формы в зависимости от размера выборки. Вместо значений z используются значения t, которые больше для выборок меньшего размера, что дает большую погрешность. Поскольку небольшой размер выборки будет менее точным.

Доверительные интервалы с Python

Python имеет обширную библиотеку, поддерживающую все виды статистических вычислений, что немного упрощает нашу жизнь. В этом разделе мы рассмотрим данные о привычках сна малышей. 20 участников этих наблюдений были здоровы, вели себя нормально, нарушений сна не имели. Наша цель — проанализировать время сна дремлющих и не дремлющих малышей.

Ссылка: Akacem LD, Simpkin CT, Carskadon MA, Wright KP Jr, Jenni OG, Achermann P, et al. (2015) Время циркадных часов и сна различаются между дремлющими и не дремлющими малышами. PLoS ONE 10(4): e0125181. https://doi.org/10.1371/journal.pone.0125181

Мы будем импортировать библиотеки, которые нам понадобятся

import numpy as np import pandas as pd from scipy.stats import t pd.set_option('display.max_columns', 30) # установить, чтобы можно было видеть все столбцы математики импорта DataFrame
df = pd.read_csv(nap_no_nap.csv) #чтение данных
df.head ()
Доверительные интервалы с Python

Создайте два 95% доверительных интервала для среднего времени отхода ко сну: один для малышей, которые спят, а другой для малышей, которые не спят. Во-первых, мы выделим столбец «время ночного сна» для тех, кто спит, в новую переменную, а тех, кто не спал, в другую новую переменную. Время сна здесь десятичное.

bedtime_nap = df['ночное время сна'].loc[df['сон'] == 1] bedtime_no_nap = df['ночное время сна'].loc[df['сон'] == 0]

печать (лен (перед сном))

печать (лен (перед сном_без сна))

выход: 15 п 5


Теперь мы найдем примерное среднее время сна для сна и без сна.

сон_среднее_время сна = время сна.среднее () #20.304 нет_среднее_время_сна_отхода ко сну = время сна_без_дремоты.среднее() #19.59

Теперь мы найдем стандартное отклонение выборки для Xвздремнуть и Хбез сна 

сон_с_сном = np.std (сна_сон, ddof = 1) no_сон_с_сном = np.std (сном_без_сна, ddof = 1)

Примечание. Параметр ddof устанавливается равным 1 для выборочного стандартного варианта, иначе он станет стандартным стандартным для населения.

Теперь мы найдем стандартную ошибку выборки для Xвздремнуть и Хбез сна 

среднее_сонное_время сна = дневное_время_сна/math.sqrt(len(время_сна_сна)) #0.1526 no_nap_se_mean_time_bedtime = no_nap_s_время сна/math.sqrt(len(время сна_без_сна)) #0.2270

Пока все хорошо, теперь, когда размер выборки невелик и у нас нет стандартного отклонения доли населения, мы будем использовать значение t*. Один из способов найти значение t* — использовать scipy.stats т.ппф функция. Аргументы для t.ppf(): q = процент, df = степень свободы, масштаб = стандартное отклонение, loc = среднее значение. Поскольку t-распределение симметрично, для 95% доверительного интервала q будет равно 0.975. Обратитесь к этой для получения дополнительной информации о t.ppf().

nap_t_star = t.ppf(0.975,df=14) #2.14 no_nap_t_star = t.ppf(0.975,df=5) #2.57

Теперь мы добавим части, чтобы окончательно построить наш доверительный интервал.

сон_ci_plus = сон_среднее_время сна + сон_t_star * сон_се_время отхода ко сну

nap_ci_minus = дневное_среднее_времяотхода ко сну – сон_t_star*дрена_се_времяотхода ко сну

печать (nap_ci_minus, nap_ci_plus)

no_nap_ci_plus = no_nap_mean_time_bed + no_nap_t_star*nap_se_bedtime

no_nap_ci_minus = no_nap_mean_bedtime – no_nap_t_star*nap_se_bedtime

печать (no_nap_ci_minus, no_nap_ci_plus)


вывод: 19.976680775477412 20.631319224522585 18.95974084563192 20.220259154368087

Интерпретация: 

Из вышеприведенных результатов мы делаем вывод, что мы на 95% уверены, что среднее время сна для дневных малышей находится между 19.98:20.63 и 18.96:20.22 (вечера), а для несонных малышей — между XNUMX и XNUMX:XNUMX (вечера). Эти результаты соответствуют нашим ожиданиям, что если вы вздремнете днем, вы будете спать поздно ночью.

Конечные примечания

Итак, речь шла о простых доверительных интервалах с использованием значений z и t. Это действительно важная концепция, которую необходимо знать в случае любого статистического исследования. Отличный статистический метод вывода для оценки параметров населения по выборочным данным. Доверительные интервалы также связаны с проверкой гипотезы о том, что при 95% ДИ вы оставляете 5% места для аномалий. Если нулевая гипотеза попадает в доверительный интервал, то значение p будет большим, и мы не сможем отклонить нулевое значение. И наоборот, если он выйдет за пределы, у нас будет достаточно доказательств, чтобы отвергнуть нуль и принять альтернативные гипотезы.

Надеюсь вам понравилась статья и с новым годом (:

Материалы, показанные в этой статье, не принадлежат Analytics Vidhya и используются по усмотрению Автора.

Источник: https://www.analyticsvidhya.com/blog/2022/01/understanding-confidence-intervals-with-python/

Отметка времени:

Больше от Аналитика Видхья