Vierde beweging · Verschil onthechten
Oefening 9.5 · ANCOVA: een groep én een getal
Een covariaat naast een nominale voorspeller · analysis of covariance
In deze oefening
Data bij deze oefening — penguins.csv 342 pinguïns · diamantjes.csv de twaalf steentjes uit het boek · wat elke kolom betekent
prikkel
Een verschil dat van teken wisselt
groepsverschil · derde variabele · correctie
Je kent deze drie stapeltjes inmiddels goed.1 In deze pinguïns wegen de Chinstraps gemiddeld 32.43 gram méér dan de Adélies — bijna niks — en de Gentoo’s 1375.35 gram méér, ruim een kilo voorsprong. Die verschillen heb je in Oefening 9.4 getoetst, klaar.
Nu doen we iets kleins. We zetten vinlengte in het model, naast soort. Eén kolom erbij, meer niet — er wordt geen pinguïn opnieuw gewogen. En kijk wat er met precies dezelfde twee getallen gebeurt: de voorsprong van de Gentoo’s zakt van 1375.35 naar 266.81 gram, en de Chinstraps wegen in dit model opeens 206.51 gram mínder dan de Adélies. Van ietsje zwaarder naar duidelijk lichter. Het verschil klapt om van plus naar min, en niemand heeft de data aangeraakt.
Een getal dat van teken wisselt zodra er een tweede kolom mag meekijken — dat wil je verklaard hebben. Wat weet die vin dat de weegschaal alleen niet ziet? Trek even mee.
speel het
Zet een getal naast een groep
covariaat · factor · ANCOVA
- Open
diamantjes.csv. De kolomDken je uit Oefening 9.1: 1 voor een sterretje, 0 voor een golfje. - Eerst alleen het merk — verschillen golfje en sterretje in glans? Regression → Linear Regression,
glansnaar Dependent Variable enDnaar Covariates. In Coefficients:D20.00, p = .114. - En nu met gladheid ernaast: sleep ook
gladheidnaar Covariates. Dezelfde rijDzegt nu 14.95, p = .001.
Kijk daar even naar, want het gaat de andere kant op dan je misschien verwacht. Op de twaalf steentjes lijken de twee merken twintig punten glans te schelen, maar met zoveel ruis eromheen haalt dat verschil de drempel niet: p = .11. Zet je gladheid ernaast, dan wordt het verschil kleiner (14.95) en tegelijk significant (p = .001). De R² springt van .231 naar .945.
Dat is geen goochelarij. Gladheid verklaart een enorm deel van de glans-verschillen, en zolang die verschillen als ruis in het model blijven zitten, verdrinkt het merk-effect erin. Reken gladheid weg en de ruis krimpt — waardoor je het merkverschil ineens wél kunt zien.
Nu jij — bij de pinguïns, waar de covariaat het omgekeerde doet. Bij de steentjes haalde gladheid ruis wég en maakte het merkverschil daarmee zichtbaar. Bij de pinguïns gaat de vinlengte het soortverschil juist grotendeels opeten. Allebei zijn het redenen om een covariaat te gebruiken — de eerste heet ruis wegnemen, de tweede vertekening wegnemen.
Open
penguins.csvin JASP (menu linksboven → Open). Voor dit blok houd je de Adélies als vertrekpunt aan, zoals in Oefening 9.1 afgesproken — dus bouw je de dummy’schinstrapengentoo. Heb jechinstrapnog staan van die oefening, dan hoeft alleengentooerbij: een berekende kolom (klik op de+rechts van de laatste kolom, icoon R) metifelse(soort == "Gentoo", 1, 0)Kijk of hij staat waar je denkt: Frequencies → Contingency Tables,
gentooin Rows ensoortin Columns — 123 Gentoo’s op 1, alle andere op 0.Model 1 — alleen de soort. Dit is de eenweg-ANOVA uit Oefening 9.4, nu als regressie geschreven. Regression → Linear Regression:
gewichtnaar Dependent Variable,chinstrapengentoonaar Covariates. In Coefficients: intercept 3700.66,chinstrap32.43,gentoo1375.35; in Model Summary drukt JASP 0.670 af.Model 2 — de vinlengte erbij. Sleep ook
vinlengtenaar Covariates. In Coefficients staan nu deze vier, hier afgerond op twee decimalen (je scherm geeft er meer):Unstandardized (Intercept) −4031.48 vinlengte 40.71 chinstrap −206.51 gentoo 266.81 En in Model Summary: 0.783.
Vraag bij allebei de modellen onder Statistics ook Confidence intervals op — die heb je verderop in dit blok nodig.
Schrik niet van dat eerste getal, −4031.48: dat is het intercept, en het voorspelt het gewicht van een pinguïn met een vin van nul millimeter. Die bestaat niet, dus het getal betekent niets — precies zoals in oefening 8.1. Laat hem staan en kijk naar de rest.
Zet de twee soort-regels onder elkaar en je ziet waar de prikkel over ging:
| model 1 (alleen soort) | model 2 (vin erbij) | |
|---|---|---|
| Chinstrap t.o.v. Adélie | +32.43 | −206.51 |
| Gentoo t.o.v. Adélie | +1375.35 | +266.81 |
Dit model — een nominale voorspeller (de soort) naast een getalsmatige voorspeller (de vinlengte) — heeft een eigen naam: ANCOVA, analysis of covariance. De getalsmatige voorspeller die je erbij zet heet de covariaat, en de groepsvariabele heet de factor.
Laat die naam je niet imponeren. Kijk nog eens naar het kader hierboven: het is gewoon een regressie met twee voorspellers, precies zoals in Oefening 8.1. Wat er anders is, is niet de som maar de vraag — je wilt de groepen vergelijken, en de covariaat zit erin om die vergelijking eerlijker te maken.
snap het
Waar die duizend gram gebleven is
gecorrigeerde gemiddelden · vergelijkbaar maken
De Gentoo’s verloren ruim duizend gram voorsprong. Waar ging die heen?
Descriptives → Descriptive Statistics, vinlengte bij Variables en soort bij Split: Adelie 189.95, Chinstrap 195.82, Gentoo 217.19.
Daar staat het. De Gentoo’s hebben vinnen van gemiddeld 217 millimeter, tegen 190 bij de Adélies — ruim zevenentwintig millimeter langer. En je ziet zo in model 2 wat een millimeter vin waard is als de soort vaststaat: zo’n veertig gram. Een flink deel van “de Gentoo is zwaarder” was dus eigenlijk “de Gentoo heeft langere vinnen”.
Model 2 vraagt daarom iets anders dan model 1. Niet: hoeveel schelen deze soorten in gewicht? Maar: hoeveel zouden ze schelen als ze allemaal dezelfde vinlengte hadden? Je maakt de groepen op papier vergelijkbaar op de covariaat, en kijkt wat er van het verschil overblijft.
Dat kun je ook echt uitrekenen. Vraag het model wat het voorspelt voor elke soort bij één en dezelfde vinlengte — bijvoorbeeld de gemiddelde:
- ANOVA → ANCOVA:
gewichtnaar Dependent Variable,soortnaar Fixed Factors envinlengtenaar Covariates. - Vouw Marginal Means open en sleep
soortnaar het rechtervak.
In de tabel Marginal Means: Adelie 4146.86, Chinstrap 3940.35, Gentoo 4413.67 — het model doorgerekend bij de gemiddelde vinlengte, 200.92 mm.
Ter vergelijking de ruwe gemiddelden: Descriptives → Descriptive Statistics, gewicht bij Variables en soort bij Split — 3700.66, 3733.09, 5076.02.
Deze heten de gecorrigeerde gemiddelden: wat elke soort naar verwachting zou wegen bij een vin van 200.92 millimeter. In het boek zie je ze als een beeld. Geef elke soort een eigen lijn van gewicht op vinlengte, alle drie met dezelfde helling. Dan is de tussenruimte tussen twee van die evenwijdige lijnen, gemeten bij één en dezelfde vinlengte, precies het verschil tussen hun gecorrigeerde gemiddelden. Gentoo min Adélie: 4413.67 − 4146.86 = 266.81, het getal dat model 2 al bij de Gentoo’s zette.
Ruw liggen ze op 3700, 3733 en 5076 — een kloof van bijna veertienhonderd gram. Gecorrigeerd liggen ze op 4147, 3940 en 4414: nog steeds verschillend, maar veel dichter bij elkaar, en de Chinstrap is nu de lichtste in plaats van de middelste.
In het Engels heten ze adjusted means, en in de uitvoer van SPSS estimated marginal means (JASP zegt kortweg Marginal Means).
a) Hoeveel van het verschil in gewicht verklaart model 1, en hoeveel model 2? (rapporteer beide R²)
b) Toets model 2 als geheel. Schrijf de nulhypothese eerst voluit op, in woorden én in symbolen. (rapporteer R², F(df1, df2) en p, en de hypothesen in symbolen)
c) Wat voegt de vinlengte toe bovenop de soort? Vink in Linear Regression onder Statistics het vakje R² change aan en zet onder Model de dummy’s chinstrap en gentoo in het nulmodel (Add to null model); de regel van het tweede model in Model Summary geeft je de F Change. (rapporteer F(df1, df2), p en ΔR²)
d) En andersom — wat voegt de soort toe bovenop de vinlengte? Ruil om: nu staat alleen vinlengte in het nulmodel. (rapporteer F(df1, df2), p en ΔR²)
e) Zijn de twee soort-verschillen in model 2 significant? (rapporteer per soort b, SE, t en p)
f) Welke soort is de referentiecategorie, en waaraan zie je dat?
g) Waarom is de Chinstrap ruw ietsje zwáárder dan de Adélie, maar gecorrigeerd ruim tweehonderd gram lichter? Kijk naar de gemiddelde vinlengtes.
Z) Mag je dit model eigenlijk wel gebruiken? Een ANCOVA heeft één aanname die de gewone regressie niet heeft: de covariaat moet in élke groep dezelfde helling hebben. Toets dat door een model mét interactie ernaast te leggen — in ANOVA → ANCOVA voeg je die onder Model toe — en kijk ook naar de drie hellingen apart.
a) Model 1: R² = .670. Model 2: R² = .783.
b) De nulhypothese: dit model — vinlengte en soort samen — verklaart níéts van de verschillen in gewicht. In symbolen — en let op het aantal, want de soort bracht twee dummy’s mee naast de vinlengte:
\[H_0:\ \beta_1 = \beta_2 = \beta_3 = 0 \qquad H_1:\ \text{minstens één } \beta_j \neq 0\]
of over de verklaarde variantie: \(H_0:\ \rho^2 = 0\) tegen \(H_1:\ \rho^2 > 0\); één van de twee is genoeg.
Uitkomst: R² = .783, F(3, 338) = 405.69, p < .001. De F staat in de ANOVA-tabel onder je Model Summary.
c) F(1, 338) = 175.69, p < .001, ΔR² = .113. Fors: de vin brengt echt iets nieuws mee.
d) F(2, 338) = 18.39, p < .001, ΔR² = .024. Twee vrijheidsgraden, want de soort bracht twee dummy’s mee. Ook significant, maar veel kleiner — en dat is het punt van dit blok: het meeste van wat “soortverschil” leek, was vinlengte.
En herken je dit getal? Kijk nog eens naar de ANCOVA-tabel waarmee je de gecorrigeerde gemiddelden opvroeg: daar staat bij soort precies deze F(2, 338) = 18.39, en bij vinlengte de 175.69 van vraag c). Die tabel toetst per voorspeller wat hij toevoegt bovenop de andere — dezelfde som als jouw twee nulmodellen.
e) Ja, allebei. Chinstrap tegenover Adélie: b = −206.51, SE = 57.73, t(338) = −3.58, p < .001. Gentoo tegenover Adélie: b = 266.81, SE = 95.26, t(338) = 2.80, p = .005.
f) Adélie. Die komt in geen enkele rij van de tabel voor — jij hebt zelf chinstrap en gentoo gebouwd en de Adélies weggelaten, precies zoals bij Oefening 9.1.
g) Omdat de Chinstraps langere vinnen hebben dan de Adélies (195.82 tegen 189.95 mm). Ruw compenseert die extra vinlengte hun gewicht net tot iets boven de Adélies. Houd je de vinlengte gelijk, dan valt die compensatie weg, en dan blijkt een Chinstrap bij dezelfde vinlengte gewoon een lichter beest.
Z) Nee — en dat is geen formaliteit. Draai de toets:
- ANOVA → ANCOVA:
gewichtnaar Dependent Variable,soortnaar Fixed Factors,vinlengtenaar Covariates — dezelfde analyse als bij de gecorrigeerde gemiddelden. - Open Model, selecteer in de linkerlijst
vinlengteénsoorttegelijk en voeg de interactietermvinlengte✻soorttoe. - Kijk in de ANCOVA-tabel naar die rij: F(2, 336) = 5.53, p = .004.
De drie hellingen apart: filter per soort (het trechtertje boven de data, bijvoorbeeld soort == "Gentoo") en draai per soort een Regression → Linear Regression van gewicht op vinlengte. Zet het filter daarna weer uit.
Adelie 32.83 | Chinstrap 34.57 | Gentoo 54.62
F(2, 336) = 5.53, p = .004 — significant, dus de aanname zákt. En je ziet het ook zonder toets: bij de Gentoo’s is elke millimeter vin ruim 54 gram waard, bij de Adélies nog geen 33. Dat is geen klein verschil.
Wat dat betekent lees je in de volgende sectie, want dit is te belangrijk voor een antwoordkader.
snap het
De aanname die zakte, en wat je dan doet
evenwijdige lijnen · interactie · wat je niet mag beweren
Een ANCOVA leunt op iets wat de gewone meervoudige regressie niet nodig heeft. Model 2 geeft één helling voor de vinlengte, en gebruikt die voor alle drie de soorten. Dat mag alleen als die ene helling in elke groep ongeveer klopt. In dit werkboek heet die eis de aanname van evenwijdige lijnen: teken je per groep de lijn van de uitkomst op de covariaat, dan lopen die lijnen evenwijdig. Je komt dezelfde eis ook tegen als gelijke hellingen (of gelijke hellingshoeken), als parallelliteit, en in het Engels als homogeneity of regression slopes of parallelism, zoals bij De Heus hieronder. Het blijft één eis, en verder zeggen we hier evenwijdig.
Waarom hij ertoe doet, is met één beeld te zien. Drie evenwijdige lijnen liggen overal even ver uit elkaar, dus “het verschil tussen de soorten” is één getal, waar je ook kijkt. Lopen de lijnen niet evenwijdig, dan waaieren ze — en dan hangt het verschil ervan af bij welke vinlengte je meet. Bij korte vinnen is het verschil anders dan bij lange. Dan bestaat het gecorrigeerde gemiddelde helemaal niet meer.
En dat is precies de situatie hier: 32.83, 34.57 en 54.62. De Gentoo-lijn loopt veel steiler dan de andere twee.
Het MVDA-werkboek van Peter de Heus — het oefenboek waarmee tweedejaars psychologie in Leiden multivariate data-analyse leren — is hier kort over (p. 78):
“Since there is no reason for social reality to obey the parallelism assumption, in addition to an ordinary ANCOVA, we must also always perform an ANCOVA with the addition of the
covariate * treatmentinteraction. If the F test of this interaction is not significant, you can forget the analysis with interaction and interpret the results with the ordinary ANCOVA model. If the interaction is significant, however, the variable should not be used as a covariate.”
En over waaróm (p. 77): “Violation of the parallelism assumption is deadly for the validity and interpretability of ANCOVA.” De gecorrigeerde gemiddelden kloppen dan niet meer, en de F-toetsen evenmin.
Dus: de mooie tabel uit de vorige sectie — 4147, 3940, 4414 — mag je zó niet rapporteren. Je hebt hem berekend, je hebt gezien wat een covariaat dóet, en dat was de les. Maar als resultaat houdt hij geen stand.
En dan de vraag die je nu hoort te stellen: wat van mijn eigen antwoorden hierboven is nog geldig? Eerlijk antwoord: alles wat uit model 2 komt, valt om. Dat is niet alleen die tabel — het zijn ook de twee soort-verschillen uit vraag e) (de −206.51 en de 266.81), de F-toets van het hele model uit vraag b), en de modelvergelijkingen uit c) en d), waarin je telkens toetste of het grote model beter past dan het kleine. Als de lijnen niet evenwijdig lopen, kloppen de gecorrigeerde gemiddelden niet, en dan kloppen de toetsen die erop rusten net zo min.
Wat wél blijft staan: het model met alleen de soort (vraag a, model 1) — dat is de gewone eenweg-ANOVA uit Oefening 9.4 en die heeft met dit alles niets te maken. En de gemiddelde vinlengtes per soort uit vraag g, want dat zijn gewoon gemiddelden.
Zeg dat verschil één keer hardop, want het is de hele kunst van dit blok: berekenen mocht, rapporteren mag niet. Je hebt die getallen nodig gehad om te zíen wat een covariaat doet. Ze in een verslag zetten is iets anders.
Voordat je denkt dat je iets fout hebt gedaan: dat heb je niet. Je hebt de keuring gedraaid en die heeft gewerkt. Zo hoort het te gaan — een aanname die nooit zakt, is geen aanname maar een formaliteit.
En je kent dit eigenlijk al. Een covariaat-maal-factor-interactie is exact wat je in de volgende oefening onder een andere naam tegenkomt: een helling die per groep verschilt. Bij een ANCOVA is dat een probleem, want die wíl één helling delen. In de volgende oefening is het juist het onderwerp.
Wat je nu doet, is drie dingen kunnen kiezen — en de eerste is bijna altijd de goede:
- De covariaat niet gebruiken en gewoon de eenweg-ANOVA rapporteren. Dat is De Heus’ voorschrift.
- De interactie tot onderwerp maken en per groep een eigen helling rapporteren. Dan doe je geen ANCOVA meer, maar precies wat de volgende oefening doet.
- Een andere factor kiezen waar de aanname wél houdt — en dat gaan we nu doen, want de pinguïns hebben er een.
jouw beurt
Van soort naar sekse — nu met een aanname die houdt
covariaat · gecorrigeerd gemiddelde · evenwijdige lijnen
In Oefening 9.4 toetste je het gewichtsverschil tussen de seksen met een eenweg-ANOVA: F(1, 331) = 72.96, p < .001. Mannetjes zijn zwaarder. Maar mannetjes hebben ook langere vinnen — en daarmee is dit precies dezelfde vraag als hierboven, op een factor met twee groepen.
Tel eerst wie er meedoet, net als in Oefening 9.4: Descriptives → Descriptive Statistics,
seksebij Variables, vink Frequency tables aan. Je hoort Valid 333 en Missing 9 te zien staan — van negen pinguïns is de sekse nooit vastgesteld. Staat er 342 bij Valid metNAals derde categorie, zet die twee letters dan onder Preferences → Data in de lijst met ontbrekende waarden en draai opnieuw.Bouw de dummy
man: een berekende kolom (+, icoon R) metifelse(sekse == "male", 1, 0)Kijk het na: vraag ook van
maneen Frequency table — 165 nullen, 168 enen en 9 bij Missing. Staan de negen zonder sekse op 0 in plaats van bij Missing, dan tellen ze stiekem als vrouwtje mee; regel dan eerst stap 1.Model 1: Regression → Linear Regression,
gewichtnaar Dependent Variable enmannaar Covariates. Model 2: sleep ookvinlengtenaar Covariates. Vraag onder Statistics weer de Confidence intervals op.
a) Hoeveel gram schelen de seksen ruw? (rapporteer b en R² van model 1)
b) Waarom doen er 333 pinguïns mee en geen 342? Wat betekent dat voor je rapportage?
c) Toets model 2 als geheel. (rapporteer R², F(df1, df2) en p)
d) Wat gebeurt er met het sekseverschil zodra de vinlengte erbij komt? (rapporteer b, SE, t, p en het 95%-interval)
e) Reken de gemiddelde vinlengte per sekse uit. Verklaart dat de verandering uit vraag d?
f) Vraag de twee gecorrigeerde gemiddelden op, net als bij de soort: ANOVA → ANCOVA met sekse als Fixed Factor en vinlengte als Covariate, en sekse bij Marginal Means. Bij welke vinlengte rekent JASP ze uit — bij de 200.92 van eerder in dit blok, of bij iets anders? Zet ze daarna naast de ruwe gemiddelden.
g) Wat voegt de vinlengte toe bovenop de sekse? (rapporteer F(df1, df2) en p)
h) Vergelijk deze uitkomst met de soort-ANCOVA hierboven. Bij de soort verdween het meeste van het groepsverschil; hier niet. Wat is het verschil?
Z) Toets of de lijnen evenwijdig lopen, net als hierboven. Kijk ook naar de twee hellingen apart. Mag je dit model gebruiken?
a) b = 683.41 gram (mannetjes zwaarder dan vrouwtjes), R² = .181.
b) Van negen pinguïns is de sekse niet vastgesteld; die doen in elk model met sekse erin niet mee. In je rapportage noem je die n = 333 dus expliciet, en niet de 342 van het hele bestand. Een steekproefgrootte die stilletjes verandert tussen twee analyses is precies het soort ding waar een lezer over struikelt.
c) R² = .806, F(2, 330) = 684.80, p < .001.
d) Het halveert ruimschoots: van 683.41 naar b = 347.85, SE = 40.34, t(330) = 8.62, p < .001, 95% CI [268.49, 427.21]. Nog steeds fors en nog steeds significant — maar de helft van het “sekseverschil” was vinlengte.
e) Ja. Mannetjes 204.51 mm, vrouwtjes 197.36 mm — ruim zeven millimeter langer. En wat een millimeter waard is, staat gewoon in je eigen model:
Kijk in de tabel Coefficients van model 2: in de rij vinlengte staat 46.98.
Ruim zeven millimeter maal bijna 47 gram is ongeveer 336 gram — en dat is vrijwel precies het stuk dat uit het sekseverschil verdween (683.41 − 347.85 = 335.56).
f) Bij de gemiddelde vinlengte van 200.97 mm: vrouwtjes 4031.57 gram, mannetjes 4379.42 gram. Ruw waren dat 3862.27 en 4545.68.
Geen 200.92 dus. Eerder in dit blok was de gemiddelde vinlengte 200.92, gerekend over alle 342 pinguïns; dit model draait op de 333 met een bekende sekse, en JASP rekent de tabel Marginal Means uit bij het gemiddelde van precies díé 333: 200.97. Die negen weggevallen pinguïns verschuiven het gemiddelde met vijf honderdsten millimeter, en dus je gecorrigeerde gemiddelden met een paar gram. Dat is geen rekenfout — het is dezelfde n = 333 uit vraag b, die nu ook je covariaat raakt. Een gecorrigeerd gemiddelde hoort gerekend te zijn op precies de gegevens waar het model op draait — en dat doet het programma hier zelf. De twee schuiven dus naar elkaar toe, maar de volgorde blijft dezelfde — anders dan bij de Chinstrap.
g) F(1, 330) = 1062.63, p < .001. Enorm, zoals te verwachten: de vinlengte is verreweg de beste voorspeller van het gewicht die deze data heeft.
h) Bij de soort ging het grootste deel van het groepsverschil naar de covariaat toe, en één verschil klapte zelfs om van teken. Hier blijft ruim de helft staan. Dat komt doordat de seksen véél minder in vinlengte verschillen (7 mm) dan de soorten onderling (27 mm tussen Adélie en Gentoo). Hoe sterker de groepen op de covariaat verschillen, hoe meer er van het groepsverschil verdwijnt zodra je ervoor corrigeert.
Z) Ja, deze keer wél. De toets:
ANOVA → ANCOVA: gewicht naar Dependent Variable, sekse naar Fixed Factor, vinlengte naar Covariate. Voeg onder Model de interactieterm vinlengte✻sekse toe en lees die rij af: F(1, 329) = 0.01, p = .92.
De twee hellingen apart, met het trechtertje (sekse == "female" en daarna sekse == "male"): 47.15 en 46.86.
F(1, 329) = 0.01, p = .92 — bij lange na niet significant. En de twee hellingen zijn 47.15 en 46.86: die schelen nog geen drie tienden van een gram per millimeter. Zó evenwijdig worden ze zelden. Hier mag je de gecorrigeerde gemiddelden dus gewoon rapporteren.
Eén slag om de arm, en die is van De Heus (p. 83): een niet-significante interactie bewijst de aanname niet. Een toets die niets vindt, kan ook gewoon te weinig power hebben gehad — “niets gevonden” is nooit hetzelfde als “er is niets”. Daarom kijk je er altijd de hellingen zelf bij. Hier zeggen die twee hetzelfde als de toets, en dán ben je zo dicht bij zekerheid als je komt.
eindopdracht
De afsluiter van het hele hoofdstuk
Dit hoofdstuk ging over één idee in vijf gedaanten: een groep is ook een getal. Je codeerde groepen als dummy’s, toetste twee groepen met een t-toets, gaf dat verschil een maat met Cohens d, toetste drie groepen in één keer met een ANOVA, en zette er zojuist een covariaat naast. Vijf namen, één model.
Nu breng je het samen — en deze keer niet als losse vragen, maar als het stuk dat je in een verslag zou zetten. Twee secties, zoals in een artikel.
De vraag. Verschillen de drie pinguïnsoorten in snaveldiepte, en blijft dat verschil overeind als je corrigeert voor de vinlengte?
Methode en data-analyse
Schrijf op wat je gaat doen, vóór je de uitkomsten kent. Deze sectie bevat geen resultaten.
- Welke variabelen gebruik je, en welke rol heeft elk (afhankelijke, factor, covariaat)? Noem het meetniveau erbij.
- Hoeveel pinguïns doen er mee, en vallen er waarnemingen af?
- Welke toetsen ga je draaien, in welke volgorde, en waarom die volgorde?
- Welke aannames ga je controleren, en hoe? Noem ze bij naam en zeg per aanname wat je opvraagt. Vergeet de evenwijdige lijnen niet — en schrijf ook op wat je gaat doen als hij zakt. Dat besluit neem je nú, niet straks als je de uitkomst ziet.
Resultaten
Draai het, en schrijf het op als een resultatensectie — lopende zinnen, geen lijstje.
- De uitkomst van je aannamecontroles, inclusief de evenwijdige lijnen. Die komt eerst, want hij bepaalt of de rest iets betekent. Als een aanname zakt, zeg dat en voer uit wat je in je methodesectie beloofde.
- De eenweg-ANOVA op soort, met effectgrootte.
- Eén paar soorten apart: verschillen de Adélies en de Chinstraps in snaveldiepte? Een t-toets met Cohens d erbij, zoals in Oefening 9.2 en Oefening 9.3. In gewicht scheelden die twee maar 32 gram (Oefening 9.4). Wat zegt dat over de zin “de soorten verschillen”?
- Het model dat je uiteindelijk mag interpreteren, met de bijbehorende getallen.
- Eén slotalinea in gewone taal: wat betekent dit voor de vraag waarmee je begon?
Ter controle van je opzet, niet van je uitkomst: de vinlengte en de snaveldiepte hangen negatief samen (r = −.584), dus verwacht hier iets anders dan bij het gewicht. En kijk écht of de lijnen evenwijdig lopen voordat je gecorrigeerde gemiddelden opschrijft — dit blok liet net zien waarom.
rapportage
Schrijf het op als een onderzoeker
rapportagezin · gecorrigeerde gemiddelden · aanname vermelden
Bij een ANCOVA komt er één laag bij die je bij de gewone regressie niet had: je meldt dat je de aanname gecontroleerd hebt, en met welke uitkomst. Niet in een voetnoot — gewoon in de zin, want een lezer kan je gecorrigeerde gemiddelden anders niet op waarde schatten. Zo voor het sekse-model:
Om te onderzoeken of het gewichtsverschil tussen mannetjes- en vrouwtjespinguïns standhoudt na correctie voor lichaamsgrootte, voerden we een covariantieanalyse uit met sekse als factor en vinlengte als covariaat (n = 333; van negen pinguïns was de sekse niet vastgesteld). De aanname van evenwijdige regressielijnen werd niet geschonden, F(1, 329) = 0.01, p = .92. Het model als geheel verklaarde het grootste deel van de verschillen in gewicht, R² = .81, F(2, 330) = 684.80, p < .001. Bij gelijke vinlengte wogen mannetjes gemiddeld 347.85 gram meer dan vrouwtjes, b = 347.85, SE = 40.34, t(330) = 8.62, p < .001, 95% CI [268.49, 427.21]. De gecorrigeerde gemiddelden bedroegen 4031.57 gram voor vrouwtjes en 4379.42 gram voor mannetjes, tegen ruwe gemiddelden van 3862.27 en 4545.68 gram.
Vier dingen om op te letten. De n staat erbij, mét de reden dat het er 333 zijn en geen 342 — een steekproef die tussen twee analyses krimpt zonder uitleg is een lezer kwijt. De aannametoets staat vóór de uitkomsten, want hij bepaalt of die uitkomsten iets betekenen. De gecorrigeerde gemiddelden staan náást de ruwe, zodat je lezer ziet hoevéél de correctie deed. En “bij gelijke vinlengte” staat er met zoveel woorden: zonder die woorden leest iemand het getal als het gewone sekseverschil, en dat is het niet.
De typografie is als altijd: symbolen die een waarde dragen cursief — R², F, p, SE, t, n — de gewone woorden rechtop, CI rechtop met een spatie vóór de haak, twee decimalen, en een p onder .001 schrijf je als p < .001 zonder nul voor de punt.
En schrijf een gezakte aanname net zo op. Voor het soort-model zou de zin beginnen met:
De aanname van evenwijdige regressielijnen werd geschonden, F(2, 336) = 5.53, p = .004; de vinlengte is daarom niet als covariaat gebruikt en de soortverschillen worden ongecorrigeerd gerapporteerd.
Dat is geen bekentenis van falen maar gewoon wat er gebeurd is. Wie de gezakte toets weglaat en de gecorrigeerde gemiddelden tóch opschrijft, rapporteert wat goed uitkwam.
tentamen
Tentamenvragen
twee doelen van een covariaat · gecorrigeerde gemiddelden · evenwijdige lijnen
Deze zes hebben de vorm waarin een tentamen dit onderwerp stelt: vier opties, en precies één is de beste — de andere drie kunnen best waar zijn en toch niet het beste antwoord. Rekenen hoeft alleen bij vraag 6.
1. Wat is een ANCOVA?
- Een ANOVA waarbij de groepen eerst op de covariaat vergelijkbaar zijn gemaakt door waarnemingen weg te laten.
- Een toets die nagaat of de covariaat in elke groep dezelfde helling op de uitkomst heeft.
- Een regressie met een nominale voorspeller en een getalsmatige voorspeller naast elkaar in één model.
- Een regressie waarin de covariaat de afhankelijke variabele is en de factor de voorspeller.
2. Bij de twaalf steentjes schelen de twee merken 20.00 glanspunten, p = .11. Met de gladheid als covariaat wordt het merkverschil op de glans kleiner (14.95) en tegelijk significant (p = .001). Hoe kan die p zakken terwijl het verschil zelf ook zakt?
- De covariaat nam ruis weg: in minder onverklaarde ruis is zelfs een kleiner merkverschil goed te zien.
- De covariaat nam vertekening weg: het echte merkverschil ís 14.95, en dat het nu significant is volgt uit die eerlijkere schatting.
- Het tweede model houdt meer vrijheidsgraden voor de restspreiding over, en met meer vrijheidsgraden zakt elke p vanzelf.
- Een tweede voorspeller maakt elke schatting in het model nauwkeuriger, dus ook die van het merkverschil op de glans.
3. De Chinstraps wegen ruw 32.43 gram méér dan de Adélies, en met de vinlengte in het model 206.51 gram mínder. Welke uitleg van die omslag is de beste?
- De referentiecategorie is veranderd, en daarom staan de twee soorten nu omgekeerd in de uitvoer.
- De vinlengte hangt negatief samen met het gewicht, en een negatieve covariaat draait het teken van het soortverschil om.
- De vinlengte verklaart zoveel van het gewicht dat er voor de soort een negatief restje overblijft — een rekenkundig gevolg zonder inhoudelijke betekenis.
- Chinstraps hebben langere vinnen dan Adélies; houd je de vinlengte gelijk, dan is een Chinstrap gewoon een lichter beest.
4. Waarom is de aanname van evenwijdige regressielijnen belangrijk bij een ANCOVA?
- Omdat de groepen dan op de gecorrigeerde gemiddelden even veel van elkaar verschillen als ze op de covariaat verschillen.
- Omdat de gecorrigeerde gemiddelden worden uitgerekend met één helling voor de covariaat, in alle groepen dezelfde.
- Omdat je er de interactie tussen de covariaat en de factor mee kunt toetsen.
- Omdat de spreiding binnen de groepen anders niet gelijk is, en de toets dat wel aanneemt.
5. De soort-ANCOVA zakt voor die aanname: F(2, 336) = 5.53, p = .004. De gecorrigeerde gemiddelden zijn 4146.86 gram voor de Adélies, 3940.35 voor de Chinstraps en 4413.67 voor de Gentoo’s. Wat doe je ermee?
- Rapporteren mag, mits je de gezakte toets in een voetnoot meldt.
- Rapporteren mag, want ΔR² van de interactie is maar .007 en dat is verwaarloosbaar.
- Niet rapporteren: waaieren de lijnen, dan hangt het soortverschil ervan af bij welke vinlengte je meet.
- Niet rapporteren, en ook de gemiddelde vinlengte per soort niet, want die staat onder precies dezelfde aanname.
6. Voor het sekse-model reken je de gecorrigeerde gemiddelden uit bij één vinlengte. Welke vul je in?
- Het gemiddelde over de 333 pinguïns waarop dit model draait: 200.97 mm.
- Het gemiddelde over alle 342 pinguïns (200.92 mm), zodat de twee modellen van dit blok op dezelfde vinlengte vergeleken worden.
- Per sekse het eigen gemiddelde: 204.51 mm voor de mannetjes en 197.36 mm voor de vrouwtjes.
- Dat maakt niet uit, want een ander invulgetal verschuift allebei de gecorrigeerde gemiddelden even veel.
1 c · 2 a · 3 d · 4 b · 5 c · 6 a
Hieronder staat per vraag waaróm, en waarom de drie andere opties aantrekkelijk zijn. Heb je er een goed, dan kun je die overslaan.
1. c. Meer is het niet: een regressie met twee voorspellers, waarvan de ene groepen aanwijst en de andere een getal is. a is de gok dat corrigeren hetzelfde is als groepen gelijk máken; een ANCOVA gooit niemand weg, hij rekent. b verwart de ANCOVA met zijn eigen keuring — dat toetsen van gelijke hellingen is de aannamecontrole, niet de analyse. d zet de twee rollen om; dan onderzoek je iets anders.
2. a. Kijk naar de R²: die springt van .231 naar .945, dus bijna alle onverklaarde spreiding in glans verdwijnt zodra de gladheid meedoet. De p hangt aan de verhouding tussen verschil en ruis, en hier krimpt de noemer harder dan de teller. b heeft een echt punt — het merkverschil op de glans zakt inderdaad naar 14.95 — maar dat deel alléén zou de p juist gróter maken: een kleiner verschil is moeilijker aan te tonen, niet makkelijker. Dat de p tóch zakt, komt van de ruis. c staat er andersom in: het tweede model schat één getal meer, dus gaan de vrijheidsgraden van de restspreiding van 10 naar 9 — ze nemen af. d is te ruim; een voorspeller die niets weet maakt niets nauwkeuriger, en hij kan een schatting zelfs wiebeliger maken.
3. d. Het is een schijnverband tussen de soort en het gewicht, via de vinlengte, en het mechanisme staat erbij: de Chinstraps hebben 195.82 millimeter vin tegen 189.95 bij de Adélies. a is een goede gewoonte — bij een omgeklapt teken kijk je eerst naar de referentie — maar hier blijven de Adélies in allebei de modellen het vertrekpunt. b klinkt logisch en klopt niet: r(vinlengte, gewicht) = .871, dus de samenhang tussen vinlengte en gewicht is juist stevig positief. c verklaart een uitkomst weg als machinerie, terwijl de vraag “wat weegt een Chinstrap bij dezelfde vinlengte?” een echte vraag met een echt antwoord is.
4. b. Eén helling voor alle groepen — dat is wat model 2 doet, en dat mag alleen als die ene helling in elke groep ongeveer klopt. a draait de zaak om: de aanname gaat over de hellingen, niet over hoevéél de groepen op de covariaat verschillen. c noemt het gereedschap in plaats van de reden; dát je de interactie kunt toetsen is hoe je de aanname nakijkt, niet waarom hij ertoe doet. d is een andere aanname — gelijke spreiding binnen de groepen — en die heeft elke ANOVA al, met of zonder covariaat.
5. c. Drie evenwijdige lijnen liggen overal even ver uit elkaar, dus dan is “het verschil tussen de soorten” één getal. Waaieren ze, dan is het er geen. a en b zijn allebei de verleiding om door te rekenen met wat je al hebt staan; b is de gevaarlijkste van de zes, want die .007 is echt klein — maar De Heus kent geen drempel en zegt woordelijk “the variable should not be used as a covariate”. d is te streng: die gemiddelde vinlengtes van 189.95, 195.82 en 217.19 zijn gewone gemiddelden en staan onder geen enkele aanname.
6. a. Reken het gemiddelde van de covariaat uit op precies de gegevens waar je model op draait — hier de 333 pinguïns met een bekende sekse.
d is de scherpste van de drie, want hij klopt in wat hij beweert: het verschil tussen de twee gecorrigeerde gemiddelden is bij evenwijdige lijnen 347.85 gram, welk invulgetal je ook kiest. Alleen vraagt de vraag niet naar het verschil maar naar de gemiddelden zelf, en die schuiven wel mee.
b klinkt zorgvuldig en is het niet: dan rapporteer je gecorrigeerde gemiddelden bij een vinlengte die dit model nooit gezien heeft. Bij de vrouwtjes scheelt dat 4029.13 tegen 4031.57 gram — weinig, en de verkeerde gewoonte. c haalt de hele correctie weg: vul je per groep zijn eigen gemiddelde in, dan krijg je de rúwe gemiddelden terug.
De getallen in deze zes vragen staan bijna allemaal al eerder op deze bladzij. Vier niet, en die kun je zo nagaan:
- 10 en 9 (vraag 2): de vrijheidsgraden van de restspreiding. Je vindt ze in de ANOVA-tabel van de twee diamantjes-modellen, rij Residual, kolom df.
- .871 (vraag 3): de correlatie tussen vinlengte en gewicht. Regression → Correlation met
vinlengteengewicht. - .007 (vraag 5): wat de interactie toevoegt aan de R² van model 2. Neem de route van vraag c) bij de soort:
vinlengte,chinstrapengentooin het nulmodel, en voeg onder Model de interactietermenvinlengte✻chinstrapenvinlengte✻gentootoe. Je ziet hem bij het tweede model als R² Change. - 4029.13 (vraag 6): die rekent JASP niet uit, want JASP kiest zelf de 200.97. Reken hem na in twee stappen. De twee gemiddelde vinlengtes schelen 0.052 mm (200.967 tegen 200.915, op drie decimalen). Maal de vin-helling van 46.98 gram per millimeter is dat 2.44 gram. Dan is 4031.57 − 2.44 = 4029.13.
◠ Zelfde vorm in het boek
Hier: een groepsverschil dat verschuift — en soms van teken wisselt — zodra je een getalsmatige medespeler naast de groep zet, plus de aanname die bepaalt of je dat mag.
In het boek: W9 — Groepen zijn ook getallen
Daar is de soort geen etiket maar een kolom getallen zoals elke andere. Zodra dat gelukt is, mag er van alles naast — ook iets wat wél gewoon een getal was.
Voetnoten
Palmer Penguins — Gorman, Williams & Fraser (2014), Palmer Station Antarctica LTER; via het R-pakket
palmerpenguins(CC0). Alle getallen in dit blok zijn op die échte data nagerekend.↩︎