Як виконати біноміальний тест у python


Біноміальний тест порівнює вибіркову пропорцію з гіпотетичною пропорцією.

Наприклад, припустимо, що у нас є 6-гранний кубик. Якщо ми кинемо його 12 разів, ми очікуємо, що число «3» з’явиться в 1/6 випадків, що буде 12 * (1/6) = 2 рази.

Якщо число «3» насправді з’являється 4 рази, чи це доказ того, що гральний кубик зміщений на користь числа «3»? Ми могли б виконати біноміальний тест, щоб відповісти на це запитання.

У Python ви можете виконати біноміальний тест за допомогою функції binom_test() із бібліотеки scipy.stats, яка використовує такий синтаксис:

binom_test(x, n=немає, p=0,5, альтернатива=’два обличчя’)

золото:

  • x: кількість «успіхів»
  • n: загальна кількість проб
  • p: ймовірність успіху кожного випробування
  • альтернатива: альтернативна гіпотеза. За умовчанням встановлено «двосторонній», але ви також можете вказати «вищий» або «менший».

Ця функція повертає p-значення тесту. Ми можемо завантажити цю функцію за допомогою такого синтаксису:

 from scipy.stats import binom_test

Наступні приклади ілюструють, як виконувати біноміальні тести в Python.

Приклад 1: 6-гранний кубик кидають 24 рази, і він потрапляє на число «3» рівно 6 разів. Виконайте біноміальний тест, щоб визначити, чи зміщений кубик у бік числа «3».

Нульова та альтернативна гіпотези нашого тесту такі:

H 0 : π ≤ 1/6 (кулик не зміщений до числа «3»)

H A : π > 1/6

*π — символ частки населення.

Ми введемо таку формулу на Python:

 binom_test(x= 6 , n= 24 , p= 1/6 , alternative=' greater ')

0.1995295129479586

Оскільки це p-значення (0,1995) не менше 0,05, ми не можемо відхилити нульову гіпотезу. У нас недостатньо доказів, щоб стверджувати, що кубик зміщений до числа «3».

Приклад 2: ми кидаємо монету 30 разів, і вона випадає головами рівно 19 разів. Виконайте біноміальний тест, щоб визначити, чи зміщена монета в бік голів.

Нульова та альтернативна гіпотези нашого тесту такі:

H 0 : π ≤ 1/2 (монета не зміщена в сторону голів)

H A : π > 1/2

Ми введемо таку формулу на Python:

 binom_test(x= 19 , n= 30 , p= 1/2 , alternative=' greater ')

0.10024421103298661

Оскільки це p-значення (0,10024) не менше 0,05, ми не можемо відхилити нульову гіпотезу. У нас недостатньо доказів, щоб стверджувати, що монета упереджена на користь голів.

Приклад 3: магазин виробляє віджети з ефективністю 80%. Вони впроваджують нову систему, яка, як вони сподіваються, підвищить ефективність. Вони випадковим чином вибирають 50 віджетів із нещодавно створених і відзначають, що 47 із них ефективні. Виконайте біноміальний тест, щоб визначити, чи веде нова система до більшої ефективності.

Нульова та альтернативна гіпотези нашого тесту такі:

H 0 : π ≤ 0,80 (нова система не призводить до підвищення ефективності)

H A : π > 0,80

Ми введемо таку формулу на Python:

 binom_test(x= 47 , n= 50 , p= 0.8 , alternative=' greater ')

0.005656361012155314

Це p-значення (0,00565) менше 0,05, ми відхиляємо нульову гіпотезу. Ми маємо достатньо доказів, щоб стверджувати, що нова система призводить до підвищення ефективності.

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *