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)