Як виконати перевірку гіпотез у python (з прикладами)
Перевірка гіпотези — це формальний статистичний тест, який ми використовуємо, щоб відхилити або не відхилити статистичну гіпотезу.
Цей підручник пояснює, як виконувати такі перевірки гіпотез у Python:
- Зразок t тесту
- Двовибірковий Т-тест
- Т-критерій парних вибірок
Ходімо!
Приклад 1: приклад t-тесту в Python
Одновибірковий t-критерій використовується, щоб перевірити, чи дорівнює середнє значення генеральної сукупності певному значенню.
Наприклад, скажімо, ми хочемо знати, чи становить середня вага певного виду черепах 310 фунтів.
Щоб перевірити це, ми збираємо просту випадкову вибірку черепах із такими вагами:
Вага : 300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303
У наведеному нижче коді показано, як використовувати функцію ttest_1samp() у бібліотеці scipy.stats для виконання t-тесту з одним зразком:
import scipy.stats as stats #define data data = [300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303] #perform one sample t-test stats. ttest_1samp (a=data, popmean= 310 ) Ttest_1sampResult(statistic=-1.5848116313861254, pvalue=0.1389944275158753)
Статистика t-критерію становить -1,5848 , а відповідне двостороннє значення p становить 0,1389 .
Дві гіпотези для цього t-критерію на певній вибірці такі:
- H 0 : µ = 310 (середня вага цього виду черепах 310 фунтів)
- H A : µ ≠310 (середня вага не становить 310 фунтів)
Оскільки p-значення нашого тесту (0,1389) більше, ніж альфа = 0,05, ми не можемо відхилити нульову гіпотезу тесту.
У нас немає достатніх доказів, щоб стверджувати, що середня вага цього конкретного виду черепах є чимось іншим, ніж 310 фунтів.
Приклад 2: двовибірковий t-тест у Python
Двовибірковий t-критерій використовується, щоб перевірити, чи рівні середні дві сукупності чи ні.
Наприклад, припустімо, що ми хочемо знати, чи однакова середня вага двох різних видів черепах.
Щоб перевірити це, ми збираємо просту випадкову вибірку черепах кожного виду з такими вагами:
Зразок 1 : 300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303
Зразок 2 : 335, 329, 322, 321, 324, 319, 304, 308, 305, 311, 307, 300, 305
Наступний код показує, як використовувати функцію ttest_ind() у бібліотеці scipy.stats для виконання цих двох прикладів t-тестів:
import scipy. stats as stats #define array of turtle weights for each sample sample1 = [300, 315, 320, 311, 314, 309, 300, 308, 305, 303, 305, 301, 303] sample2 = [335, 329, 322, 321, 324, 319, 304, 308, 305, 311, 307, 300, 305] #perform two sample t-tests stats. ttest_ind (a=sample1, b=sample2) Ttest_indResult(statistic=-2.1009029257555696, pvalue=0.04633501389516516)
Статистика t-критерію становить –2,1009 , а відповідне двостороннє значення p – 0,0463 .
Два припущення для цього конкретного двовибіркового t-тесту:
- H 0 : µ 1 = µ 2 (середня вага двох видів однакова)
- H A : µ 1 ≠ µ 2 (середня вага двох видів не однакова)
Оскільки p-значення тесту (0,0463) менше 0,05, ми відхиляємо нульову гіпотезу.
Це означає, що ми маємо достатньо доказів, щоб стверджувати, що середня вага між двома видами не однакова.
Приклад 3: t-тест парних зразків у Python
Т-критерій для парних вибірок використовується для порівняння середніх значень двох вибірок, коли кожне спостереження в одній вибірці можна пов’язати зі спостереженням в іншій вибірці.
Наприклад, скажімо, ми хочемо знати, чи здатна певна тренувальна програма збільшити максимальний вертикальний стрибок (у дюймах) баскетболістів.
Щоб перевірити це, ми можемо набрати просту випадкову вибірку з 12 студентів-баскетболістів і виміряти кожен з їхніх максимальних вертикальних стрибків. Тоді ми можемо запропонувати кожному гравцю використовувати тренувальну програму протягом місяця, а потім знову виміряти їхній максимальний вертикальний стрибок наприкінці місяця.
Наступні дані показують максимальну висоту стрибка (у дюймах) до та після використання програми тренувань для кожного гравця:
Спереду : 22, 24, 20, 19, 19, 20, 22, 25, 24, 23, 22, 21
Після : 23, 25, 20, 24, 18, 22, 23, 28, 24, 25, 24, 20
Наступний код показує, як використовувати функцію ttest_rel() у бібліотеці scipy.stats для виконання цього t-тесту парних зразків:
import scipy. stats as stats #define before and after max jump heights before = [22, 24, 20, 19, 19, 20, 22, 25, 24, 23, 22, 21] after = [23, 25, 20, 24, 18, 22, 23, 28, 24, 25, 24, 20] #perform paired samples t-test stats. ttest_rel (a=before, b=after) Ttest_relResult(statistic=-2.5289026942943655, pvalue=0.02802807458682508)
Статистика t-критерію становить –2,5289 , а відповідне двостороннє значення p – 0,0280 .
Два припущення для цього конкретного t-критерію парних зразків:
- H 0 : µ 1 = µ 2 (середня висота стрибка до і після використання програми однакова)
- H A : µ 1 ≠ µ 2 (середня висота стрибка до і після використання програми не однакова)
Оскільки p-значення тесту (0,0280) менше 0,05, ми відхиляємо нульову гіпотезу.
Це означає, що ми маємо достатньо доказів, щоб стверджувати, що середня висота стрибка до і після використання програми тренувань не однакова.
Додаткові ресурси
Ви можете використовувати такі онлайн-калькулятори для автоматичного виконання різних t-тестів:
Приклад калькулятора t-тесту
Калькулятор двовибіркового t-тесту
Калькулятор t-критерію парних зразків