Як обчислити довірчі інтервали в python
Довірчий інтервал для середнього — це діапазон значень, який, ймовірно, міститиме середнє значення сукупності з певним рівнем довіри.
Він розраховується таким чином:
Довірчий інтервал = x +/- t*(s/√n)
золото:
- x : вибіркове середнє
- t: значення t, яке відповідає рівню довіри
- s: вибіркове стандартне відхилення
- n: розмір вибірки
Цей посібник пояснює, як обчислити довірчі інтервали в Python.
Довірчі інтервали з використанням t-розподілу
Якщо ми працюємо з невеликою вибіркою (n < 30), ми можемо використати функцію t.interval() із бібліотеки scipy.stats, щоб обчислити довірчий інтервал для середнього значення сукупності.
У наступному прикладі показано, як обчислити довірчий інтервал для справжньої середньої висоти популяції (у дюймах) певного виду рослин, використовуючи вибірку з 15 рослин:
import numpy as np import scipy.stats as st #define sample data data = [12, 12, 13, 13, 15, 16, 17, 22, 23, 25, 26, 27, 28, 28, 29] #create 95% confidence interval for population mean weight st.t.interval(alpha=0.95, df=len(data)-1, loc=np.mean(data), scale=st.sem(data)) (16.758, 24.042)
95% довірчий інтервал для справжнього середнього розміру популяції становить (16,758, 24,042) .
Ви помітите, що чим вищий рівень довіри, тим ширший довірчий інтервал. Наприклад, ось як обчислити 99% ДІ для тих самих даних:
#create 99% confidence interval for same sample st.t.interval(alpha= 0.99 , df=len(data)-1, loc=np.mean(data), scale=st.sem(data)) (15.348, 25.455)
99% довірчий інтервал для справжнього середнього розміру популяції становить (15,348, 25,455) . Зауважте, що цей інтервал ширший за попередній 95% довірчий інтервал.
Довірчі інтервали з використанням нормального розподілу
Якщо ми працюємо з більшими вибірками (n≥30), ми можемо припустити, що вибірковий розподіл вибіркового середнього розподілено нормально (завдяки центральній граничній теоремі ), і замість цього можна використовувати функцію норми. interval() із бібліотеки scipy .stats.
У наступному прикладі показано, як обчислити довірчий інтервал для справжньої середньої висоти популяції (у дюймах) певного виду рослин, використовуючи вибірку з 50 рослин:
import numpy as np import scipy.stats as st #define sample data np.random.seed(0) data = np.random.randint(10, 30, 50) #create 95% confidence interval for population mean weight st.norm.interval(alpha=0.95, loc=np.mean(data), scale=st.sem(data)) (17.40, 21.08)
95% довірчий інтервал для справжнього середнього розміру популяції становить (17,40, 21,08) .
Як і у випадку з t-розподілом, вищі рівні довіри призводять до більш широких довірчих інтервалів. Наприклад, ось як обчислити 99% ДІ для тих самих даних:
#create 99% confidence interval for same sample st.norm.interval(alpha= 0.99 , loc=np.mean(data), scale=st.sem(data)) (16.82, 21.66)
95% довірчий інтервал для справжнього середнього розміру популяції становить (17,82, 21,66) .
Як інтерпретувати довірчі інтервали
Припустимо, що наш 95% довірчий інтервал для справжньої середньої висоти виду рослин становить:
95% довірчий інтервал = (16,758, 24,042)
Спосіб інтерпретації цього довірчого інтервалу такий:
З імовірністю 95% довірчий інтервал [16,758, 24,042] містить справжню середню висоту рослин популяції.
Інший спосіб сказати те саме: існує лише 5% ймовірність того, що справжнє середнє значення сукупності лежить за межами 95% довірчого інтервалу. Тобто існує лише 5% ймовірність того, що фактична середня висота рослини буде менше 16,758 дюймів або більше 24,042 дюймів.