p-waarden

Hypothesis Testing in R

Richie Cotton

Data Evangelist at DataCamp

Strafzaken

  • Twee mogelijke werkelijke toestanden.
    1. Verdachte heeft het misdrijf gepleegd.
    2. Verdachte heeft het misdrijf niet gepleegd.
  • Twee mogelijke vonnissen.
    1. Schuldig.
    2. Niet schuldig.
  • Aanvankelijk wordt de verdachte als niet schuldig verondersteld.
  • Is het bewijs "buiten redelijke twijfel" dat de verdachte het misdrijf pleegde, dan volgt "schuldig", anders "niet schuldig".
Hypothesis Testing in R

Leeftijd van eerste programmeerervaring

  • age_first_code_cut classificeert wanneer een Stack Overflow-gebruiker begon met programmeren
    1. "adult" betekent begonnen op 14 jaar of ouder
    2. "child" betekent begonnen vóór 14 jaar
  • Eerder onderzoek suggereert dat 35% van de softwareontwikkelaars als kind begon met programmeren
  • Levert onze steekproef bewijs dat onder data scientists het aandeel dat als kind begon groter is?
Hypothesis Testing in R

Definities

Een hypothese is een uitspraak over een onbekende populatieparameter.

Een toets vergelijkt twee concurrerende hypothesen.

  • De nulhypothese ($H_{0}$) is het bestaande "kampioen"-idee.

  • De alternatieve hypothese ($H_{A}$) is het nieuwe "uitdager"-idee van de onderzoeker.

Voor ons probleem

  • $H_{0}$: Het aandeel data scientists dat als kind begon is gelijk aan dat van softwareontwikkelaars (35%).
  • $H_{A}$: Het aandeel data scientists dat als kind begon is groter dan 35%.
1 "Naught" is Brits-Engels voor "nul". Historisch wordt "H-naught" internationaal gebruikt om de nulhypothese uit te spreken.
Hypothesis Testing in R
  • Twee mogelijke werkelijke toestanden.
    1. Verdachte heeft het misdrijf gepleegd.
    2. Verdachte heeft het misdrijf niet gepleegd.
  • Twee mogelijke vonnissen.
    1. Schuldig.
    2. Niet schuldig.
  • Aanvankelijk wordt de verdachte als niet schuldig verondersteld.
  • Is het bewijs "buiten redelijke twijfel" dat de verdachte het misdrijf pleegde, dan volgt "schuldig", anders "niet schuldig".
  • In werkelijkheid is ofwel $H_{A}$ ofwel $H_{0}$ waar (niet beide).
  • De uitkomst is of "verwerp $H_{0}$" of "verwerp $H_{0}$ niet".
  • Aanvankelijk nemen we aan dat $H_{0}$ waar is.
  • Is het steekproefbewijs "significant" voor $H_{A}$, kies die; anders $H_{0}$.

De significantiedrempel is de analoog van "buiten redelijke twijfel" bij toetsen.

Hypothesis Testing in R

Één- en tweezijdige toetsen

Dichtheidsplot van de standaardnormale verdeling met het midden afgedekt; alleen de staarten zichtbaar.

Toetsen bepalen of de steekproefstatistiek in de staarten van de nulverdeling ligt.

Toets Staarten
alternatief verschilt van nul tweezijdig
alternatief groter dan nul rechtszijdig
alternatief kleiner dan nul linkszijdig

$H_{A}$: Het aandeel data scientists dat als kind begon met programmeren is groter dan 35%.

Ons alternatief gebruikt "groter dan", dus we hebben een rechtszijdige toets nodig.

Hypothesis Testing in R

p-waarden

  • Hoe groter de p-waarde, hoe sterker de steun voor $H_{0}$.
  • Hoe kleiner de p-waarde, hoe sterker het bewijs tegen $H_{0}$.
  • Kleine p-waarden betekenen dat de statistiek in de staart van de nulverdeling ligt (de verdeling als de nulhypothese waar is).
    • De "p" in p-waarde staat voor kans (probability).
    • Voor p-waarden betekent "klein": "dicht bij nul".
Hypothesis Testing in R

Definitie van p-waarden

Een p-waarde is

de kans om een teststatistiek te zien

even extreem of extremer

dan in onze oorspronkelijke steekproef,

als de nulhypothese waar is.

Hypothesis Testing in R

z-score berekenen

prop_child_samp <- stack_overflow %>%
  summarize(point_estimate = mean(age_first_code_cut == "child")) %>%
  pull(point_estimate)
0.388
prop_child_hyp <- 0.35
std_error <- 0.0096028
z_score <- (prop_child_samp - prop_child_hyp) / std_error
3.956
Hypothesis Testing in R

p-waarde berekenen

  • pnorm() is de normale CDF.
  • Linkszijdige toets → standaard lower.tail = TRUE.
  • Rechtszijdige toets → zet lower.tail = FALSE.

 

p_value <- pnorm(z_score, lower.tail = FALSE)
3.818e-05
Hypothesis Testing in R

Laten we oefenen!

Hypothesis Testing in R

Preparing Video For Download...