Jak uruchomić próbkę i dwa przykłady testów z w pythonie
Możesz użyć funkcji ztest() z pakietu statsmodels , aby wykonać jeden przykładowy i dwa przykładowe testy Z w Pythonie.
Ta funkcja wykorzystuje następującą podstawową składnię:
statsmodels. stats . weightstats . ztest ( x1 , x2 = None , value = 0 )
Złoto:
- x1 : wartości pierwszej próbki
- x2 : wartości dla drugiej próbki (jeśli wykonujesz test z dwóch próbek)
- wartość : średnia poniżej zera (w przypadku jednej próbki) lub średnia różnica (w przypadku dwóch próbek)
Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję.
Przykład 1: Przykład testu Z w Pythonie
Załóżmy, że iloraz inteligencji pewnej populacji ma rozkład normalny ze średnią μ = 100 i odchyleniem standardowym σ = 15.
Badacz chce wiedzieć, czy nowy lek wpływa na poziom IQ. Rekrutuje więc 20 pacjentów do wypróbowania tego i rejestruje ich poziom IQ.
Poniższy kod pokazuje, jak wykonać przykładowy test Z w Pythonie, aby ustalić, czy nowy narkotyk powoduje znaczącą różnicę w poziomach IQ:
from statsmodels. stats . weightstats import ztest as ztest
#enter IQ levels for 20 patients
data = [88, 92, 94, 94, 96, 97, 97, 97, 99, 99,
105, 109, 109, 109, 110, 112, 112, 113, 114, 115]
#perform one sample z-test
ztest(data, value= 100 )
(1.5976240527147705, 0.1101266701438426)
Statystyka testu dla testu z jednej próbki wynosi 1,5976 , a odpowiadająca mu wartość p wynosi 0,1101 .
Ponieważ ta wartość p jest nie mniejsza niż 0,05, nie mamy wystarczających dowodów, aby odrzucić hipotezę zerową. Innymi słowy, nowy lek nie wpływa znacząco na poziom IQ.
Przykład 2: Dwa przykłady testów Z w Pythonie
Załóżmy, że poziomy IQ wśród osób w dwóch różnych miastach mają rozkład normalny ze znanymi odchyleniami standardowymi.
Badacz chce wiedzieć, czy średni poziom IQ pomiędzy mieszkańcami miasta A i B jest inny. Wybiera więc prostą losową próbę 20 osób z każdego miasta i rejestruje ich poziom IQ.
Poniższy kod pokazuje, jak przeprowadzić w Pythonie test Z dla dwóch próbek, aby ustalić, czy średni poziom IQ różni się w obu miastach:
from statsmodels. stats . weightstats import ztest as ztest
#enter IQ levels for 20 individuals from each city
cityA = [82, 84, 85, 89, 91, 91, 92, 94, 99, 99,
105, 109, 109, 109, 110, 112, 112, 113, 114, 114]
cityB = [90, 91, 91, 91, 95, 95, 99, 99, 108, 109,
109, 114, 115, 116, 117, 117, 128, 129, 130, 133]
#perform two sample z-test
ztest(cityA, cityB, value= 0 )
(-1.9953236073282115, 0.046007596761332065)
Statystyka testu dla testu z dwóch próbek wynosi -1,9953 , a odpowiadająca mu wartość p wynosi 0,0460 .
Ponieważ ta wartość p jest mniejsza niż 0,05, mamy wystarczające dowody, aby odrzucić hipotezę zerową. Innymi słowy, średni poziom IQ znacznie różni się pomiędzy obydwoma miastami.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne popularne testy statystyczne w Pythonie:
Jak wykonać test T dla jednej próby w Pythonie
Jak wykonać test T dla dwóch próbek w Pythonie
Jak wykonać test T dla sparowanych próbek w Pythonie