Logistische regressie
Auteur | prof dr R.J. de Haan | |
Co-Auteur | prof dr J.W.R. Twisk | |
auteurschap op deze site |
Wanneer gebruik ik een logistisch regressie model?
Met logistische regressie kan je een dichotome uitkomstvariabele (dood versus leven, wel of geen klachten, etc.) relateren aan één of meerdere predictoren. Het basis idee achter logistische regressie is dat je de uitkomstvariabele zodanig transformeert dat er een soort lineaire regressie mogelijk is. De logistische regressie coëfficiënten van de onafhankelijke variabelen in het model kunnen vervolgens worden omgezet in odds ratio’s.
In tegenstelling tot bij lineaire regressie gelden bij logistische regressie niet al te veel statistische voorwaarden. Zo hoeven er bijvoorbeeld geen aannames te worden gedaan over de verdeling van de uitkomstvariabele. De voorspellers (of verklarende variabelen) kunnen (net als bij lineaire regressie) zowel discreet als continu zijn. Wel moeten de observaties onafhankelijk van elkaar zijn. Dat betekent dat logistische regressie niet geschikt is om onderzoeksgegevens te analyseren waarbij de patiënten herhaaldelijk in de tijd zijn gemeten (voor herhaalde metingen bestaan andere technieken).
Hoe werkt logistische regressie?
In een logistisch regressiemodel wordt niet de dichotome uitkomst zelf gemodelleerd, maar de kans op die uitkomst. Omdat een kans loopt van minimum 0 tot maximaal 1 en bij lineaire regressie de uitkomstvariabele continu moet zijn, kunnen we de kans niet rechtstreeks als uitkomstvariabele gebruiken. We kunnen wel gebruik maken van de relatieve kans: de odds. Immers, de odds kan gezien worden als een continue variabele die loopt van 0 tot oneindig. Vervolgens moet er statistisch nog iets aanvullends worden gedaan. De odds, die loopt van 0 tot oneindig, is immers nog niet normaal verdeeld, hetgeen óók een voorwaarde is voor lineaire regressie. Als uitkomstvariabele wordt daarom niet de odds gebruikt, maar de natuurlijke logaritme van de odds, die niet alleen continu maar ook normaal verdeeld is. In de logistische regressie vergelijking
is de natuurlijke logaritme van de odds de uitkomst variabele, is de constante, zijn Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle X_i, (i = 1,2, ….., k)} de verklarende variabelen of covariaten, en vormen de logistische regressiecoëfficiënten.
Hoe interpreteer ik mijn SPSS output bij gebruik van een enkelvoudig logistisch model?
(Het hierna volgende voorbeeld is afkomstig uit het boek “Inleiding in de toegepaste biostatistiek” van J.W.R Twisk, Elsevier gezondheidszorg, Maarssen, 2007).
In een case-control onderzoek wordt bij 100 patiënten en 100 controlepersonen de relatie onderzocht tussen roken en het krijgen van een hartinfarct. De onderzoeksresultaten staan in de volgende 2x2 tabel weergegeven.
patient | controle | totaal | |
rookt wel | 39 | 14 | 53 |
rookt niet | 61 | 86 | 147 |
totaal | 100 | 100 | 200 |
De odds ratio (OR) voor roken in vergelijking tot niet-roken op het krijgen van een hartinfarct kan op de volgende manier berekend worden:
Het 95% betrouwbaarheidsinterval loopt van 1,70 tot 7,86. Er is een significante associatie, want de waarde van de nulhypothese (er is geen associatie: OR = 1) ligt buiten het betrouwbaarheidsinterval.
We gaan deze analyse herhalen, maar nu met behulp van logistische regressie. Als we in SPSS in de schermen van de module Binary Logistic de variabele ‘type proefpersoon’ (als afhankelijke (dependent) variabele opgeven (0 = controle, 1 = patiënt) en de variabele ‘roken’ (0 = nee, 1= ja) als onafhankelijke (independent) invoeren, dan zal SPSS, naast ander output, de concluderende slot-tabel “Variables in the Equation” genereren.
Variables in the Equation | |||||||||
---|---|---|---|---|---|---|---|---|---|
B | S.E. | Wald | df | Sig. | Exp(B) | 95.0% C.I.for Exp(B) | |||
Lower | Upper | ||||||||
Step 1 | roken | 1.368 | .354 | 14.960 | 1 | .000 | 3.927 | 1.694 | 7.855 |
Constant | -.343 | .167 | 4.210 | 1 | .040 | .709 |
De logistische regressiecoëfficiënt b heeft de waarde 1,368. De Wald test geeft aan dat er sprake is van een significant verband (p < 0,001) tussen roken en het krijgen van een infarct. Omdat de logistische regressiecoëfficiënt gelijk is aan de natuurlijk logaritme van de OR, kunnen we de e-macht nemen van de regressiecoëfficiënt [EXP(B)], waardoor de natuurlijke logaritme als het ware ‘wegvalt’ en de OR overblijft. De OR op het hebben van een hartinfarct voor rokers ten opzichte van niet-rokers is hier dus = 3,927 (95% CI: 1,694 - 7,855).
Hoe interpreteer ik mijn SPSS output bij gebruik van een meervoudig logistisch model?
In dit voorbeeld zullen we met behulp van meervoudige ('multiple' of 'multivariable') logistische regressie meerdere onafhankelijke variabelen (covariaten) gelijkertijd meenemen in het model. Laten we ervan uitgaan dat we in een prospectief cohortonderzoek bij 115 in het ziekenhuis opgenomen oudere patiënten de kans op het optreden van delier (0 = niet, 1 = wel) tijdens hun opname willen voorspellen. Dit doen we aan de hand van de volgende patiëntkenmerken: cognitief functioneren voor opname (0 = geen stoornis, 1 = wel stoornis), ADL niveau voor opname (0 = niet beperkt, 1 = beperkt), en leeftijd (continue variabele). Merk op dat de geschatte OR bij een continue variabele, in dit geval leeftijd, geïnterpreteerd moet worden als de OR op het krijgen van een delier voor het verschil van één eenheid in leeftijd (hier uitgedrukt in jaren). Stel bijvoorbeeld dat de variabele ‘leeftijd’ een OR heeft van 1,028 (zoals in het voorbeeld), dan wil dat zeggen dat de odds op het krijgen van een delier van een persoon die één jaar ouder is 1,028 keer zo hoog is als de odds van een persoon die één jaar jonger is.
SPSS laat in de concluderende tabel “Variables in the Equation” de volgende resultaten zien:
Variables in the Equation | |||||||||
---|---|---|---|---|---|---|---|---|---|
B | S.E. | Wald | df | Sig. | Exp(B) | 95.0% C.I.for Exp(B) | |||
Lower | Upper | ||||||||
Step 1 | Cognitie | 1.800 | .607 | 8.794 | 1 | .003 | 6.047 | 1.841 | 19.863 |
ADL | 1.237 | .508 | 5.928 | 1 | .015 | 3.444 | 1.273 | 9.321 | |
Leeftijd | .028 | .032 | .761 | 1 | .383 | 1.028 | .966 | 1.094 | |
Constant | -5.034 | 2.527 | 3.970 | 1 | .046 | .007 |
Cognitief functioneren (p = 0,003) en ADL niveau (p = 0,015) blijken onafhankelijke voorspellers te zijn voor het optreden van delier tijdens ziekenhuisopname. Cognitie laat een OR zien van 6,047. Met andere woorden: geadjusteerd voor het ADL niveau en leeftijd, is de odds op het krijgen van een delier bij patiënten met cognitieve stoornissen ongeveer 6 keer zo hoog als de odds voor patiënten zonder cognitieve stoornissen. Rekening houdend met de invloeden van cognitie en leeftijd, blijken patiënten met functionele beperkingen eveneens een grotere kans te hebben op het krijgen van een delier (OR = 3,444). Geadjusteerd voor de twee indicators van functionele gezondheid (cognitie en ADL), blijkt de leeftijd van de patiënt echter niet significant geassocieerd te zijn met het krijgen van een delier (OR = 1,028; p = 0,383).
Hoe interpreteer ik de output van een continue voorspeller een logistisch model?
Een van de risicofactoren die in ons model zit is de totale duur van de anesthesie in minuten. In het model geeft dit een B waarde van 0,005 en een odds ratio van 1,005 zien. Dit geeft een p waarde die sterk significant is (0.001), maar ik begrijp niet precies hoe ik die odds ratio moet interpreteren. Wat ik denk is dat het de toename van de kans op postoperatieve misselijkheid per minuut anesthesieduur weergeeft, maar zeker weten doe ik dat niet.
Je interpretatie per minuut is juist. Om een meer sprekende OR te krijgen zou de duur bijvoorbeeld door 10 kunnen delen. De OR wordt dan gegeven per 10 minuten toename van anesthesie. Als je daarbij geen afronding gebruikt, verandert er verder niets aan het model.
Wat betekenen de regressiecoeffienten in een logistisch model?
Ik onderzoek de invloed van leeftijd van de patient op het wel/ niet uitvoeren van een onderzoek. afhankelijke = onderzoek ja/nee dichotoom) onafhankelijke = leeftijd (numeriek) Hier heb ik logistische regressie gebruikt, wat er eerst erg interessant uitzag: Exp(B) is 0.951. Ik dacht dat je per toename van levensjaar 5% minder kans had om onderzoek te krijgen. Maar later zag ik dat zowel de a (-0.05) als de b (-0.0556) negatief waren. Nu kan ik het niet meer interpreteren, dat zou betekenen dat voor iedere leeftijd de kans op het krijgen van het onderzoek kleiner dan 0 is? Heb ik iets over het hoofd gezien?
De eerste interpretatie is de juiste. OR van 0.951 zegt inderdaad dat met ieder levensjaar de kans (eigenlijk de odds) op onderzoek krijgen met ~5% afneemt. De a is meestal niet van belang. Die geeft binnen het model de intercept weer (dus de verwachte waarde bij een leeftijd van 0). De a staat op de logit schaal genoteerd. De proportie behorend bij een a van -0.05 kan als volgt hieruit berekend worden:
ln(odds)= ln (p/(1-p)) = -0,05
p = exp(-0.05)/(1+exp(-0.05)) = 0.49,
waarbij exp(x) is e-tot de macht-x. Je ziet dus dat er voor kinderen met leeftijd 0 een proportie van 0.49 onderzoek ja geschat wordt. Vaak is een patient met de covariabele waarde 0 niet aanwezig binnen de studiepopulatie en heeft deze intercept minder betekenis, maar het is wel goed om te kijken of deze waarde redelijk lijkt.
De b staat ook genoteerd in de logit context. Een negatieve b betekent dat de kans op onderzoek afneemt bij toenemende leeftijd. De b is direct gekoppeld aan de OR.
OR = exp(b) = exp(-0.0556) = 0.95
Let er dus op dat de regressiecoefficienten (a en b) niet op dezelfde manier geïnterpreteerd kunnen worden als bij lineaire regressie.
Kan ik adjusted proporties krijgen uit mijn logistisch model?
Bij de follow-up evaluatie van de uitkomsten van een RCT (interventie versus usual care) willen we tevens een analyse doen waarbij we corrigeren voor baseline verschillen. Voor een dichotome variabele (wel of niet neurologisch afwijkend) hebben we univariaat een crostab gemaakt, met een chi-kwadraat toets. Vervolgens hebben we dit met een log regressie gedaan en daarna een multivariate log regressie met de covariaten erin. De vraag is nu, hoe presenteren we de data? Normaal gesproken zouden we de frequenties geven (24% versus 14% afwijkend), maar uit de log regr komt een odds ratio. Is het dan logischer om twee keer een odds ratio te presenteren? dus van het univariate en multivariate log model? Of kunnen we ook vergelijkbaar met adjusted means uit een ANCOVA een adjusted frequentie krijgen? En zo ja, hoe dan.
Meestal worden inderdaad univariable en multivariable odds ratios gepresenteerd. Je kunt echter ook geadjusteerde proporties berekenen. Het is daarvoor gebruikelijk om de voorspelde frequenties te berekenen voor een patient die voor alle corrigeerde variabelen de gemiddelde waarde heeft. Met behulp van de formule van de logistische regressie waarbij je voor de corrigerende variabelen de gemiddelde waarde invult en voor de variabele van interesse (intervenite versus usual care) een keer een 0 en een keer een 1. Als het model bijv is:
ln(odds_neurologische afwijking) = intercept + B1 * interventie + B2 * age_at_baseline,
en de gemiddelde leeftijd op baseline van alle patietnen was 63, dan geldt voor de 'usual care groep'
ln(odds_neurologische afwijking) = intercept + B2 * 63,
en voor de interventiegroep:
ln(odds_neurologische afwijking) = intercept + B1 *1 + B2 * 63.
De intercept, B1 en B2 lees je af uit de coefficienten tabel van de logsitsche regressie.
De zo gevonden 'log odds'-getallen kun je terugrekenen naar proporties door de inverse transformatie erop los te laten. Er geldt
ln(odds) = log (P/1-P)
Als je hier weer de P terug uit wilt vinden kun je gebruiken:
P = exp(log_odds)/(1+exp(log_odds))
De P is 'kans op het event', maar kan ook geinterpreteerd worden als voorspelde proportie events. De voorspelde proportie events in de twee groepen voor een patient met alle andere covariaten op hun gemiddelde is een goede weergave van het 'geadjusteerde' effect.
Waar vind ik logistische regressie in SPSS?
Je vindt deze techniek in SPSS 16 onder Analyze->Regression->Binary Logistic.
Referenties
- Course material on logistic regression from the web based distance learning course - Regression Models as a Tool in Medical Research - International School of Quantitative Research, University of Freiburg.
- Course material on the use of categorical predictors (in logistic regression) from the web based distance learning course - Regression Models as a Tool in Medical Research - International School of Quantitative Research, University of Freiburg.
Terug naar OVERZICHT voor een overzicht van alle statistische onderwerpen op deze wiki.
Terug naar KEUZE TOETS voor hulp bij het uitzoeken van een geschikte toets of analyse.