Hoofdstuk 12 · De odds ratio
Samenhang tussen twee ja/nee-variabelen · odds & odds ratio
De prikkel
Springfield, Massachusetts, 1986. In het Baystate Medical Center wordt bij elke bevalling een formulier ingevuld — honderdnegenentachtig keer, een jaar lang, echt opgeschreven.1 Van dat formulier lezen wij vandaag twee vakjes: rookte de moeder tijdens de zwangerschap (ja/nee), en woog de baby bij de geboorte te weinig (ja/nee).
Tel je de vakjes na, dan zie je dit: van de rokende moeders kreeg 41% een baby met een laag geboortegewicht; van de niet-rokende 25%. En in het artikel dat over zulke data geschreven wordt, staat dan één getal: 2.02 — “de odds zijn twee keer zo groot.”
Wacht eens even. 41 tegenover 25 — dat is toch helemaal geen verdubbeling? Waar komt die 2 vandaan? Overdrijft hier iemand?
Ja. En het gekke is: het getal klopt tóch. Trek even mee — we gaan uitzoeken wat een odds eigenlijk is, en waarom hij groter praat dan de kans.
Speel het
⬇ Download de data — geboortegewicht.csv
Eerst het telwerk. Haal de 189 baby’s binnen en zet de twee ja/nee-kolommen tegen elkaar af in een kruistabel.
- Open
geboortegewicht.csvin JASP (menu linksboven → Open). - Klik bovenin op Frequencies en kies Contingency Tables.
- Sleep
rokennaar Rows enlaag_geboortegewichtnaar Columns. - Open Cells en vink bij Percentages de optie Row aan.
- Open Statistics en vink Odds ratio aan.
Rechts staat nu de kruistabel: bij de rokers 30 keer ja en 44 keer nee, bij de niet-rokers 29 keer ja en 86 keer nee — en dankzij de rij-percentages die 41% tegenover 25% uit de prikkel. Daaronder: odds ratio 2.02. (Staat er bij jou 0.70 met het label log? Dat is dezelfde boodschap in logaritme-taal: e^0.70 = 2.02. En zie je 0.49, dan heeft JASP de groepen andersom gedeeld — 0.49 = 1/2.02.)
Kijk goed naar hoe die 2.02 gebouwd is, want hier begint bijna elk misverstand. Een kans (probability) zet de ja’s af tegen álle moeders: 30 van de 74 rokers, dus 0.41. Een odds zet de ja’s af tegen de nee’s: 30 tegenover 44, dus 0.68. Dat is de taal van het wedkantoor — “0.68 tegen 1”. Zelfde telwerk, andere breuk: odds = kans / (1 − kans). Onthoud dus als eerste: een odds is geen kans. Bij een kans van 0.5 is de odds al 1; bij een kans van 0.9 is de odds 9.
Deel je de twee odds op elkaar, dan krijg je de odds ratio (odds ratio, OR): 0.68 / 0.34 = 2.02. De odds op een laag geboortegewicht zijn bij de rokende moeders ruim twee keer die van de niet-rokende. Dát is waar die 2 vandaan komt — niet uit de kansen, maar uit de odds.
Schud het
Nu de vraag die telt: is die 2.02 écht, of kan toeval een kruistabel zomaar zo scheef trekken? Je zou dat willen uitproberen door vals te spelen — alle rook-labels losknippen van hun eigen moeder en lukraak opnieuw uitdelen. Evenveel rokers, evenveel baby’s met laag gewicht, maar wíé rookte is dan puur toeval. Duizend keer: duizend werelden waarin roken en geboortegewicht gegarandeerd níéts met elkaar te maken hebben.
En hier moet ik eerlijk zijn: dat schudden is geen knop in JASP. JASP rekent één keurige uitkomst uit; duizend keer husselen en opnieuw kijken is code- of speeltje-werk. Geen gemis van jou of van JASP — het boek doet het bewust zo: de simulatie-ervaring loopt via een schud-speeltje in de browser (of via het R-broertje, waar het een handvol regels code is).
Eén ding vooraf: bij een verschil is “niks aan de hand” nul, maar bij een verhouding is niks-aan-de-hand 1 — twee gelijke odds op elkaar gedeeld. Het bergje in het speeltje danst dus niet om 0, maar om 1.
En dat is precies wat je ziet: de duizend geschudde OR’s dansen om de 1 — de mediaan op 0.99, 95% tussen ongeveer 0.5 en 1.8. Maar let op: geen enkele geschudde wereld geeft precies 1, terwijl in élk van die werelden de waarheid exact 1 is. Toeval maakt van “niks” altijd “nét niet niks”. En dan de rode streep op 2.02: buiten het bergje, maar niet mijlenver — in 23 van de 1000 geschudde werelden kwam het toeval óók tot 2.02 of verder. Zeldzaam, geen nooit. De samenhang is dus vrijwel zeker echt, maar met bescheiden marge: het 95%-interval [1.08, 3.78] dat JASP je kan geven zegt hetzelfde met zijn onderkant, die tegen de 1 aan schuurt.
Snap het
Wat zegt die 2.02 nu wél, en wat niet? Drie keer opletten.
Eén: een odds ratio is geen kansen-verhouding. De verleiding is te schrijven “rokers hebben twee keer zoveel kans op een baby met laag geboortegewicht.” Niet waar. De kans ging van 25.2% naar 40.5% — deel díé twee op elkaar en je hebt het relatieve risico (relative risk, RR): 1.61. De kans werd 1.61 keer zo groot; de odds werd 2.02 keer zo groot. Zelfde data, twee getallen — en de OR is de grootste van de twee. Dat is geen toeval maar wiskunde: hoe váker de uitkomst voorkomt, hoe verder de OR boven het RR uit gaat hangen. Hier krijgt bijna één op de drie baby’s een laag gewicht, dus het gat is flink. Alleen bij zeldzame uitkomsten kruipen OR en RR naar elkaar toe. Wie een OR voorleest als “zoveel keer meer kans”, overdrijft dus — meestal zonder het te weten.
Twee: waarom doen we dan zo moeilijk met odds? Omdat het model het zo wil. Zodra je een ja/nee-uitkomst gaat voorspellen — dat is de logistische regressie van W12 — blijkt de odds de taal te zijn waarin de wiskunde soepel rekent. Onderzoekers rapporteren OR’s omdat hun model ze die aanreikt, niet omdat OR’s lekkerder lezen. Jij weet nu wat er dan staat.
Drie: samenhang, geen oorzaak. Niemand heeft deze moeders láten roken; er is alleen opgeschreven wat er gebeurde. Rokende en niet-rokende moeders verschillen in méér dan roken alleen — leeftijd, armoede, voeding — en elk van die derde spelers kan zich als het verband vermommen, net als de soort bij de pinguïns. De schud-toets sluit tóéval uit, niet verwarring. Uit deze tabel volgt dus niet dat roken een laag geboortegewicht veroorzaakt; wel dat de twee in dit ziekenhuis stevig samenhingen.
Zou je het in één eerlijke zin moeten zeggen, dan zo: onder de rokende moeders kwam een laag geboortegewicht vaker voor dan onder de niet-rokende (41% tegenover 25%; OR = 2.02, dus ruim tweemaal zo grote odds — niet tweemaal zoveel kans, dat is 1.61) — samenhang in één ziekenhuis in 1986, geen bewijs van oorzaak.
◠ Zelfde vorm in het boek
Hier: de odds als vreemde tweede taal voor kans, en één verhouding — 2.02 — die groter praat dan de kans deed.
In het boek: W12 — En hij buigt
Daar buigt de rechte lijn zich om een ja/nee-uitkomst heen, en blijkt de odds precies de taal te zijn waarin die gebogen lijn rekent.
TODO (broertje-botten, Fable 24-7): “Schud het” kan JASP niet zelf → speeltje + hop (besluit Ben 24-7): schud-speeltje in boek/04_speeltjes/ (W12-versie nog te bouwen) of het R-broertje; echte link inwiren zodra de speeltjes-plek definitief is. JASP-klikpad checken in de echte versie — Contingency Tables toont afhankelijk van versie de OR of de log odds ratio (0.70), en de richting kan omklappen (0.49 = 1/2.02); tekst vangt beide, maar verifieer. W12 (En hij buigt) nog niet geschreven — anker checken. Alle getallen nagerekend op MASS::birthwt; schud-getallen uit het R-broertje (set.seed(42)): mediaan 0.99, 95% tussen 0.52 en 1.83, 23/1000 ≥ 2.02.
Voetnoten
Hosmer & Lemeshow (1989), Applied Logistic Regression; verzameld in het Baystate Medical Center, Springfield MA, 1986; via het R-pakket
MASS(datasetbirthwt). Alle getallen in dit blok zijn op die échte data nagerekend.↩︎