p-waarden berekenen uit t-statistieken

Hypothesetoetsen in Python

James Chapman

Curriculum Manager, DataCamp

t-verdelingen

  • t-statistiek volgt een t-verdeling
  • Heeft een parameter genaamd degrees of freedom (vrijheidsgraden), of df
  • Lijkt op normaalverdelingen, met dikkere staarten

Grafiek met de PDF van een standaardnormale verdeling vergeleken met een t-verdeling met 1 vrijheidsgraad. De t-verdeling heeft dikkere staarten en een lagere piek in het midden.

Hypothesetoetsen in Python

Vrijheidsgraden

  • Meer vrijheidsgraden $\rightarrow$ t-verdeling benadert de normale verdeling
  • Normale verdeling $\rightarrow$ t-verdeling met oneindige df
  • Vrijheidsgraden: maximaal aantal logisch onafhankelijke waarden in de steekproef

Grafiek met de PDF van een standaardnormale verdeling vergeleken met t-verdelingen met diverse vrijheidsgraden. Bij meer vrijheidsgraden worden de staarten smaller en de piek hoger, wat meer lijkt op de normale verdeling.

Hypothesetoetsen in Python

Vrijheidsgraden berekenen

  • Dataset heeft 5 onafhankelijke observaties
  • Vier waarden zijn 2, 6, 8 en 5
  • Het steekproefgemiddelde is 5
  • De laatste waarde moet 4 zijn
  • Er zijn hier 4 vrijheidsgraden

 

  • $df = n_{child} + n_{adult} - 2$
Hypothesetoetsen in Python

Hypothesen

$H_{0}$: De gemiddelde beloning (in USD) is hetzelfde voor wie eerst als kind codeerde en wie eerst als volwassene codeerde

$H_{A}$: De gemiddelde beloning (in USD) is groter voor wie eerst als kind codeerde dan voor wie eerst als volwassene codeerde

 

Gebruik een rechtseenzijdige toets

Hypothesetoetsen in Python

Significantieniveau

$\alpha = 0,1$

Als $p \le \alpha$, verwerp $H_{0}$.

Hypothesetoetsen in Python

p-waarden berekenen: één proportie vs. een waarde

from scipy.stats import norm
1 - norm.cdf(z_score)

$SE(\bar{x}_{\text{child}} - \bar{x}_{\text{adult}}) \approx \sqrt{\dfrac{s_{\text{child}}^2}{n_{\text{child}}} + \dfrac{s_{\text{adult}}^2}{n_{\text{adult}}}}$

  • z-statistiek: nodig bij één steekproefstatistiek om een populatieparameter te schatten

  • t-statistiek: nodig bij meerdere steekproefstatistieken om een populatieparameter te schatten

Hypothesetoetsen in Python

p-waarden berekenen: twee gemiddelden uit verschillende groepen

numerator = xbar_child - xbar_adult
denominator = np.sqrt(s_child ** 2 / n_child + s_adult ** 2 / n_adult)
t_stat = numerator / denominator
1.8699313316221844
degrees_of_freedom = n_child + n_adult - 2
2259
Hypothesetoetsen in Python

p-waarden berekenen: twee gemiddelden uit verschillende groepen

  • Gebruik de t-verdelings-CDF, niet de normale CDF
from scipy.stats import t
1 - t.cdf(t_stat, df=degrees_of_freedom)
0.030811302165157595
  • Bewijs dat Stack Overflow-datascientists die als kind begonnen meer verdienen.
Hypothesetoetsen in Python

Laten we oefenen!

Hypothesetoetsen in Python

Preparing Video For Download...