Test t-studenta porównuje średnią z populacji z jakąś założoną przez nas średnią.
Jest to test parametryczny.
Założenia:
Dobrze jakby rozkład badanej zmiennej był normalny.
Dobrze jakby grupy były równoliczne. Niektórzy przyjmują, ze nawet jak jedna grupa jest do dwóch razy większa niż druga to można stosować test t-studenta.
Dobrze jakby wariancja była taka sama.
Często okazuje się, że test t-studenta jest odporny na złamanie powyższych założeń.
import math
import random
from scipy import stats
dane_1 = [random.randint(a,b) for a in range(0,50) for b in range(60,100)]
dane_2 = [random.randint(a,b) for a in range(0,50) for b in range(60,100)]
# Test t-studenta dla jednej próby:
test_1 = stats.ttest_1samp(dane_1, 51.5 # średnia)
# Test t-studenta dla dwóch prób niezależnych:
test_2 = stats.ttest_ind(dane_1, dane_2)
# Test t-studenta dla dwóch prób niezależnych (ze statystyk opisowych, podajemy średnią/odchylenie standardowe/ liczebność):
test_3 = stats.ttest_ind_from_stats(mean1=10.0, std1=math.sqrt(88.5), nobs1=20,mean2=15.0, std2=math.sqrt(70.0), nobs2=13)
# Test t-studenta dla dwóch prób zależnych:
test_4 = stats.ttest_rel(dane_1, dane_2)
# Test Bartletta równoci wariancji próbek o rozkładzie normalnym:
test_5 = stats.bartlett(dane_1, dane_2)
# Test Levene'a równoci wariancji (nie wymaga normalności rozkładu/ najmocniejszy z testów):
test_6 = stats.levene(dane_1, dane_2)
# Test Mood's równoci median:
test_7 = stats.median_test(dane_1, dane_2)