Voorbij statistische significantie: effectgrootte begrijpen
Effectgrootte meet de omvang van een verschil of verband, onafhankelijk van de steekproefomvang. Terwijl p-waarden u vertellen of een effect statistisch significant is, vertellen effectgroottes u hoe praktisch betekenisvol dat effect is. Dit onderscheid is cruciaal voor evidence-based besluitvorming in onderzoek, geneeskunde, onderwijs en bedrijfsleven.
Stel: een farmaceutisch onderzoek toont een statistisch significante verbetering (p < 0,001) ten opzichte van een placebo. Zonder effectgrootte weet u niet of de verbetering 0,1% of 50% is. Effectgrootte biedt deze cruciale context en helpt belanghebbenden te bepalen of het effect de kosten, bijwerkingen of implementatie-inspanning waard is.
De meest voorkomende effectgroottemaat voor het vergelijken van twee groepen is Cohens d, die het verschil tussen gemiddelden uitdrukt in standaardafwijkingseenheden. Deze standaardisatie maakt vergelijking mogelijk over verschillende onderzoeken en meetschalen.
Waarom effectgrootte belangrijk is
Statistische significantie wordt sterk beïnvloed door steekproefomvang. Met een groot genoeg steekproef worden zelfs triviale verschillen “significant.” Omgekeerd bereiken belangrijke effecten mogelijk geen significantie in kleine steekproeven. Effectgrootte lost dit probleem op door een steekproefomvang-onafhankelijke maat te bieden.
De significantieval
Belangrijke redenen om effectgrootte te gebruiken:
- Meta-analyse: Effectgroottes kunnen over onderzoeken worden gecombineerd om algehele effecten te schatten
- Poweranalyse: Nodig om benodigde steekproefomvangen te berekenen voor toekomstige onderzoeken
- Praktische beslissingen: Helpt bepalen of interventies de moeite waard zijn om te implementeren
- Replicatie: Biedt een doel voor replicatieonderzoeken om na te streven
Cohens d: de standaard effectgroottemaat
Cohens d drukt het verschil tussen twee groepsgemiddelden uit in eenheden van de gepoolde standaardafwijking:
Cohens d
Waarbij M₁ en M₂ de groepsgemiddelden zijn en sp de gepoolde standaardafwijking, berekend als:
Gepoolde standaardafwijking
Het teken van d geeft de richting aan: positief wanneer M₁ > M₂, negatief wanneer M₁ < M₂. Vaak wordt de absolute waarde |d| gerapporteerd wanneer de richting duidelijk is uit de context.
Waarom de standaardafwijking poolen?
Alternatieve effectgroottematen
Hoewel Cohens d het meest voorkomt, bestaan er alternatieven voor specifieke situaties:
Hedges' g: bias-gecorrigeerde effectgrootte
Cohens d overschat de populatie-effectgrootte enigszins bij kleine steekproeven. Hedges' g past een correctiefactor toe:
Hedges' g-correctie
Bij steekproeven groter dan 20 per groep is het verschil verwaarloosbaar. Bij kleine steekproeven (n < 20) verdient Hedges' g de voorkeur.
Glass's Δ: wanneer varianties verschillen
Wanneer één groep een controlegroep is met bekende variabiliteit, gebruik dan alleen de standaardafwijking van de controlegroep als noemer:
Glass's delta
Dit is nuttig wanneer de behandeling de variantie kan beïnvloeden (bijv. een interventie die laagpresteerders meer helpt dan hoogpresteerders).
Effectgroottes interpreteren: richtlijnen van Cohen
Jacob Cohen stelde deze conventies voor om d-waarden te interpreteren:
| Effectgrootte (d) | Interpretatie | Overlap |
|---|---|---|
| 0,2 | Klein | 85% overlap tussen groepen |
| 0,5 | Middel | 67% overlap tussen groepen |
| 0,8 | Groot | 53% overlap tussen groepen |
| 1,2 | Zeer groot | 40% overlap tussen groepen |
| 2,0 | Enorm | 19% overlap tussen groepen |
Context is belangrijk
Uitgewerkt voorbeeld: onderwijsinterventie
Een school test een nieuw leesprogramma. Controlegroep (n=25): gemiddelde=72, SD=12. Behandelingsgroep (n=30): gemiddelde=79, SD=14. Bereken Cohens d:
Bereken de gepoolde variantie
Bereken de gepoolde SD
Bereken Cohens d
Interpreteer
Dit betekent dat als u een willekeurige leerling uit de behandelingsgroep en een willekeurige leerling uit de controlegroep neemt, de leerling uit de behandelingsgroep in ongeveer 64% van de gevallen hoger zou scoren (berekend uit de overlap).
Python-implementatie
Bereken effectgroottes programmatisch met betrouwbaarheidsintervallen:
import numpy as np
from scipy import stats
def cohens_d(group1, group2):
"""Calculate Cohen's d for two independent groups."""
n1, n2 = len(group1), len(group2)
var1, var2 = np.var(group1, ddof=1), np.var(group2, ddof=1)
# Pooled standard deviation
pooled_std = np.sqrt(((n1-1)*var1 + (n2-1)*var2) / (n1+n2-2))
# Cohen's d
d = (np.mean(group1) - np.mean(group2)) / pooled_std
return d
def hedges_g(group1, group2):
"""Calculate Hedges' g (bias-corrected effect size)."""
n1, n2 = len(group1), len(group2)
d = cohens_d(group1, group2)
# Correction factor for small sample bias
correction = 1 - 3 / (4*(n1+n2) - 9)
return d * correction
# Example usage
control = [68, 72, 75, 70, 69, 74, 71, 73, 76, 72]
treatment = [75, 79, 82, 78, 80, 77, 81, 76, 83, 79]
d = cohens_d(treatment, control)
g = hedges_g(treatment, control)
print(f"Cohen's d: {d:.3f}")
print(f"Hedges' g: {g:.3f}")