Page 1
Logistisk regression
Basal Statistik for medicinske PhD-studerende
November 2008
Bendix Carstensen
Steno Diabetes Center, Gentofte &
Biostatististisk afdeling, Københavns Universitet
[email protected] www.biostat.ku.dk/~bxc
Logistisk regression
Logistisk regression omhandler analyse af responsvariable der
kun har to mulige udfald ogsa kaldet
• 0-1 variable
• binære variable
• ja-nej variable
November 2008: Logistisk regression 1
Eksempler er:
• Syg-rask
• død-levende
• stor-lille
Responsvariablen ønskes forklaret af en eller flere forklarende
variable.
November 2008: Logistisk regression 2
Page 2
Eksempel pa 0-1 variabel
Knoglemarvstransplantation pa 37 leukæmipatienter, udfaldet er
forekomst af ”acute graft versus host disease”, GvHD (DGA, s.361).
Obs gvhd donage preg type 19 0 25 1 11 0 23 0 2 20 0 24 0 32 0 18 0 2 21 1 35 1 13 0 19 0 1 22 1 35 1 24 0 22 0 2 23 1 23 0 35 0 38 0 2 24 1 43 0 36 0 20 0 2 25 1 24 1 37 0 19 0 2 26 1 35 1 28 0 23 0 2 27 1 31 0 39 0 36 0 1 28 1 29 1 210 0 19 0 1 29 1 20 0 111 0 20 0 2 30 1 39 1 112 0 21 0 3 31 1 14 0 113 0 38 0 2 32 1 35 1 214 0 15 0 2 33 1 25 1 315 0 16 0 2 34 1 32 0 316 0 25 0 1 35 1 19 0 317 0 21 1 1 36 1 34 0 318 0 20 0 2 37 1 20 0 1
November 2008: Logistisk regression 3
Udfaldet
gvhd =
{
1 hvis patienten oplevede GvHD
0 hvis patienten ikke oplevede GvHD
Forklarende variable:
donage: donors alder
preg: har donor nogensinde været gravid =
{
1 ja
0 nej
November 2008: Logistisk regression 4
type: leukæmitype =
1 akut myeloid leukæmi (AML)
2 akut lymfatisk leukæmi (ALL)
3 kronisk myeloid leukæmi (CML)
Hvilken betydning har de forklarende variable for risikoen for
at opleve GvHD?
November 2008: Logistisk regression 5
Page 3
Sædvanlig lineær regression
Her er responsvariablen yi kvantitativ og vi antager, at den er
normalfordelt
yi = b0 + b1x1i + b2x2i + ei, ei ∼ N (0, σ2)
eller:
yi ∼ N (b0 + b1x1i + b2x2i, σ2)
Forklarende variable: x1i, x2i
Regressionskoefficienter: b0, b1, b2
November 2008: Logistisk regression 6
Fortolkning af lineær regression:
Hvad pavirker størrelse af thymus hos spædbørn:
thymus størrelse = 6.09+1.06×dreng+0.35×fødslesvægt i 100 gram
• For et givent køn vokser thymus med 0.35 pr. 100 g
fødselsvægt.
• For en given vægt er thymus 1.06 større hos drenge end
hos piger.
• For et pige barn med vægt lig 0 er den forventede thymus
størrelse 6.09.
November 2008: Logistisk regression 7
• Effekten af de enkelte forklarende variable er betinget af de
øvrige variables tilstedeværelse i modellen.
• Effekten af de forklarende variable er lineær.
November 2008: Logistisk regression 8
Page 4
Analyse af 0-1 variabel
• Responsvariabel binær (0/1) – hvordan udtrykkes
afhængighed af donors alder (donage), donors
graviditetshistorie (preg) og patientens type af leukæmi
(type)
• Model for
p = P {GvHD} ∈ [0, 1]
• Upraktisk med
p = b0 + b1x1 + b2x2 + b3x3
November 2008: Logistisk regression 9
• Transformationer
– Lidt bedre med
ln(p) = b0 + b1x1 + b2x2 + b3x3
– Bedst med logistisk regression som benytter logaritmen
(naturlige) til odds
ln
(
p
1− p
)
= b0 + b1x1 + b2x2 + b3x3
November 2008: Logistisk regression 10
Logistisk regression - lidt mere præcist
logit(p) = ln
(
p
1− p
)
= b0 + b1x1 + b2x2 + b3x3
• Binære udfald: Y ∈ {0, 1}
• Sandsynlighed: p = P {Y = 1} ∈ [0, 1]
• Odds: ω =p
1− p∈ [0,+∞] dvs. p =
ω
1 + ω
• Odds-ratio: OR =p1
1− p1
/
p2
1− p2∈ [0,+∞]
November 2008: Logistisk regression 11
Page 5
• log-odds: logit(p) = ln
(
p
1− p
)
logit kaldes ogsa for link-funktionen.
• Lineær prediktor: logit(p) = b0 + b1x1 + b2x2 + b3x3 = η
• Prædikteret odds: ω = exp(η)
• Prædikteret sandsynlighed: p =ω
1 + ω=
exp(η)
1 + exp(η)
November 2008: Logistisk regression 12
Logistisk regression – fortolkning
To grupper, med sandsynligheder p1 hhv. p2:
logit(p1)− logit(p2) = ln
(
p1
1− p1
)
− ln
(
p2
1− p2
)
= ln
(
p1
1− p1
/
p2
1− p2
)
= ln(OR)
Lineære modeller for logit(p) giver sammenligninger via
odds-ratios.
November 2008: Logistisk regression 13
Estimation af regressionskeofficienterne foregar ved en
metode kaldet maksimum likelihood estimation. I logistisk
regression er denne metode en iterativ procedure som der
ikke er nogle simple formler for. Hjælpen er SAS (eller anden
statistik software).
November 2008: Logistisk regression 14
Page 6
Logistisk regression af GvHD
En model kun med den binære forklarende variabel preg (har
donor nogensinde været gravid).
p = P {GvHD}
logit(p) = ln
(
p
1− p
)
= b0 + b1 × preg
Resulterende model:
logit(p) = −0.6931 + 2.0794× preg
November 2008: Logistisk regression 15
Modellen
logit(p) = −0.6931 + 2.0794× preg
udtrykkes som sandsynlighed:
p =exp(−0.6931 + 2.0794× preg)
1 + exp(−0.6931 + 2.0794× preg)=
{
0.33 hvis preg=0
0.80 hvis preg=1
November 2008: Logistisk regression 16
Binær forklarende variabel
Log-odds for GvHD for en patient hvis donor har været
gravid (preg=1):
ln
(
p1
1− p1
)
= ln(ω1) = b0 + b1 × 1 = b0 + b1
Log-odds for GvHD for en patient hvis donor IKKE har været
gravid (preg=0):
ln
(
p0
1− p0
)
= ln(ω0) = b0 + b1 × 0 = b0
November 2008: Logistisk regression 17
Page 7
Forskellen i log-odds mellem disse to typer af patienter er:
ln(ω1)− ln(ω0) = b0 + b1 − b0 = b1
Husk regnereglerne for logaritmer:
ln(ω1)− ln(ω0) = ln
(
ω1
ω0
)
= b1
Dvs. odds ratio mellem de to typer af patienter er
OR =ω1
ω0= exp(b1) = exp(2.0794) = 8
November 2008: Logistisk regression 18
Fortolkningen er, at en patient hvis donor har været gravid
har 8 gange større odds for GvHD end en patient hvis donor
ikke har været gravid.
Donor gravid
Ja Nej Total
GvHD+ 8 9 17
GvHD− 2 18 20
Total 10 27 37
Odds ratio i denne 2 x 2 tabel beregnes som ...
Sandsynlighederne for GvHD afhængig af donorerens
November 2008: Logistisk regression 19
graviditetshistorie ... sammenlign med slide nr. ??.
November 2008: Logistisk regression 20
Page 8
Donor gravid
Ja Nej Total
GvHD+ 8 9 17
GvHD− 2 18 20
Total 10 27 37
OR =8/2
9/18=
8× 18
9× 2= 8
p1 =8
10= 0.8, p0 =
9
27= 0.33 ⇒ RR =
0.8
0.33= 2.4
November 2008: Logistisk regression 21
I dette eksempel er værdierne for OR og RR meget forskellige.
Hvorfor?
Hvis udfaldet er forholdsvis sjældent vil OR og RR ligge
tættere i værdi.
November 2008: Logistisk regression 22
Vi udvider nu med at inkludere donors alder, donage:
logit(p) = b0 + b1 × preg + b2 × donage
logit(p) = −2.6883 + 1.6982× preg + 0.0806× donage
Kontrolleret for donors alder er odds ratio for preg nu
exp(1.6982) = 5.46, dvs lidt mindre end i den tidligere
model. I denne model er der ogsa en antagelse om, at uanset
hvilken alder donoren havde vil odds ratio for preg være 5.46.
Hvad er fortolkningen af estimatet for donage?
November 2008: Logistisk regression 23
Page 9
Kvantitativ forklarende variabel
Fortolkningen af donage hvis donor aldrig har været gravid
(preg=0):
Log-odds for GvHD for en patient hvis donor var A+1 ar:
ln
(
p1
1− p1
)
= ln(ω1) = b0+b1×0+b2×(A+1) = b0+b2×(A+1)
Log-odds for GvHD for en patient hvis donor var A ar:
ln
(
p0
1− p0
)
= ln(ω0) = b0 + b1 × 0 + b2 ×A = b0 + b2 ×A
November 2008: Logistisk regression 24
Forskellen i log-odds mellem disse to typer af patienter er:
ln(ω1)−ln(ω0) = b0+b2×(A+1)−(b0+b2×A) = b2 = 0.0806
Dvs. ORA+1,A = exp(0.0806) = 1.084.
Nar donors alder stiger med 1 ar stiger forholdet mellem
patienter der far hhv. ikke far GvHD med en faktor 1.084.
Tilsvarende hvis donor har været gravid.
November 2008: Logistisk regression 25
Fortolkningen af donage hvis donor aldrig har været gravid:
Log-odds for GvHD for en patient hvis donor var A+10 ar:
ln
(
p1
1− p1
)
= ln(ω1) = b0+b1×0+b2×(A+10) = b0+b2×(A+10)
Log-odds for GvHD for en patient hvis donor var A ar:
ln
(
p0
1− p0
)
= ln(ω0) = b0 + b2 ×A
November 2008: Logistisk regression 26
Page 10
Forskellen i log-odds mellem disse to typer af patienter er:
ln(ω1)−ln(ω0) = b0+b2×(A+10)−(b0+b2×A) = b2×10 = 0.0806
Dvs. ORA+10,A = exp(0.0806× 10) = exp(0.0806)10 =
1.08410 = 2.240.
Nar donors alder stiger med 10 ar stiger forholdet mellem
patienter der far hhv. ikke far GvHD med en faktor 2.240.
Tilsvarende hvis donor har været gravid.
November 2008: Logistisk regression 27
Hvad betyder interceptet b0?
logit(p) = −0.6931 + 2.0794× preg
−0.6931 er log-odds for GvHD hos en patient hvis donor
aldrig har været gravid.
logit(p) = −2.6883 + 1.6982× preg + 0.0806× donage
−2.6883 er log-odds for GvHD hos en patient hvis donor
aldrig har været gravid og donors alder var 0 ar – ikke særligt
meningsfyldt. Vi vender tilbage til dette senere.
November 2008: Logistisk regression 28
Konfidensintervaller (Wald type)
Som for lineær regression:
estimat± z1−α/2 × std.error
Std. error er ogsa noget som maximum likelihood
estimationen giver os.
Men i logistisk regression er estimaterne log-odds eller
log-odds-ratio.
November 2008: Logistisk regression 29
Page 11
GvHD data:
95% konfidensinterval for estimat (log-odds-ratio) associeret
med donors graviditetshistorie:
1.6982± 1.96× 0.9289 = (−0.1223, 3.5188)
For odds ratio:
(exp(−0.1223), exp(3.5188)) = (0.885, 33.745)
November 2008: Logistisk regression 30
95% konfidensinterval for estimat (log-odds-ratio) associeret
med 1 ars forskel i donors alder:
0.0806± 1.96× 0.0509 = (−0.0191, 0.1804)
For OR:
(exp(−0.0191), exp(0.1804)) = (0.981, 1.198)
95% konfidensinterval for estimat (log-odds-ratio) associeret
med 10 ars forskel i donors alder:
10×0.0806±1.96×10×0.0509 = 10×(−0.0191, 0.1804) = (−0.191
November 2008: Logistisk regression 31
For OR:
(exp(−0.0191)10, exp(0.1804)10) = (0.98110, 1.19810) = (0.826, 6
November 2008: Logistisk regression 32
Page 12
Wald test
Alternativt kan man teste hypotesen om en
regressionskoefficient er lig 0 med Wald χ2-testet:
X2 =
(
estimat
std.error
)2
∼ χ2(1).
Hvis χ2(1) er større end 3.84 forkastes hypotesen med et
signifikansniveau pa 5%.
November 2008: Logistisk regression 33
Test af hypotesen H0: ingen association mellem GvHD og
donors graviditesthistorie (dvs. teste om estimatet for preg
= 0):
X2 =
(
1.6982
0.9289
)2
= 3.3425, p > 0.05
Test af hypotesen H0: ingen association mellem GvHD og
donors alder (dvs. teste om estimatet for donage = 0):
X2 =
(
0.0806
0.0509
)2
= 2.5096, p > 0.05
November 2008: Logistisk regression 34
GvHD data analyseret i SAS – uden Analystdata gvhd;
input gvhd donage preg type;cards;0 23 0 20 18 0 20 19 0 10 22 0 2...1 20 0 1;run;
proc logistic data=gvhd;model gvhd(event="1") = preg donage / cl;
run;
November 2008: Logistisk regression 35
Page 13
Output fra SAS-program
The LOGISTIC ProcedureModel Information
Data Set WORK.GVHDResponse Variable gvhdNumber of Response Levels 2Model binary logitOptimization Technique Fisher’s scoring
Number of Observations Read 37Number of Observations Used 37
Response Profile
Ordered TotalValue gvhd Frequency
1 1 172 0 20
Probability modeled is gvhd=1.
November 2008: Logistisk regression 36
Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 -2.6883 1.3480 3.9772 0.0461preg 1 1.6982 0.9289 3.3425 0.0675donage 1 0.0806 0.0509 2.5096 0.1132
Odds Ratio Estimates
Point 95% WaldEffect Estimate Confidence Limitspreg 5.464 0.885 33.745donage 1.084 0.981 1.198
Wald Confidence Interval for Parameters
Parameter Estimate 95% Confidence LimitsIntercept -2.6883 -5.3302 -0.0463preg 1.6982 -0.1223 3.5188donage 0.0806 -0.0191 0.1804
November 2008: Logistisk regression 37
Kategoriske forklarende variable
preg: har donor nogensinde været gravid =
{
1 ja
0 nej
Fortolkningen af OR for preg var forskellen i risiko for GvHD
mellem preg=1 og preg=0, eller svarende til en forskel pa 1
i den forklarende variabel. Men her er det vigtigt at preg var
kodet som 0/1. Hvis man vil være sikker i SAS skal man
benytte et sakaldt class statement.
November 2008: Logistisk regression 38
Page 14
SAS: class statementproc logistic data=gvhd;
class preg / param=ref;model gvhd(event="1")=preg;
run;
Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 1.3863 0.7906 3.0748 0.0795preg 0 1 -2.0794 0.8898 5.4619 0.0194
Odds Ratio Estimates
Point 95% WaldEffect Estimate Confidence Limitspreg 0 vs 1 0.125 0.022 0.715
November 2008: Logistisk regression 39
Estimatet for preg er det samme som tidligere men med
minus foran og OR er den recibrokke af den tidligere OR.
Interceptet er ogsa ændret:
Uden class statement:
logit(p) = −0.6931+2.0794×preg ⇒ OR = exp(2.0794) = 8
Med class statement:
logit(p) = 1.3863−2.0794×preg ⇒ OR = exp(−2.0794) =
November 2008: Logistisk regression 40
Dette skyldes, at SAS som default vælger den største værdi
af en klassevariabel som referencekategori, i dette tilfælde
preg = 1.
Hvad betyder interceptet i de to modeller? (hhv. −0.6931 og
1.3863)
November 2008: Logistisk regression 41
Page 15
Man kan vælge reference med ref=""(Husk citationstegn ogsa nar variablen er numerisk!)proc logistic data=gvhd;
class preg(ref="0") / param=ref;model gvhd(event="1")=preg;
run;Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 -0.6931 0.4082 2.8827 0.0895preg 1 1 2.0794 0.8898 5.4619 0.0194
Odds Ratio EstimatesPoint 95% Wald
Effect Estimate Confidence Limitspreg 1 vs 0 8.000 1.399 45.755
November 2008: Logistisk regression 42
Variable med mere end to kategorier
type: leukæmitype =
1 akut myeloid leukæmi (AML)
2 akut lymfatisk leukæmi (ALL)
3 kronisk myeloid leukæmi (CML)
proc logistic data=gvhd;model gvhd(event="1")=type;
run;
Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 -1.5333 0.9896 2.4010 0.1213type 1 0.6896 0.4641 2.2077 0.1373
Odds Ratio Estimates
Point 95% WaldEffect Estimate Confidence Limits
November 2008: Logistisk regression 43
type 1.993 0.802 4.949
November 2008: Logistisk regression 44
Page 16
SAS: class statementproc logistic data=gvhd;
class type / param=ref;model gvhd(event="1")=type;
run;Type III Analysis of Effects
WaldEffect DF Chi-Square Pr > ChiSqtype 2 6.4478 0.0398
Analysis of Maximum Likelihood EstimatesStandard Wald
Parameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 1.3863 0.7906 3.0748 0.0795type 1 1 -1.5686 0.9958 2.4812 0.1152type 2 1 -2.4849 0.9789 6.4432 0.0111
Odds Ratio EstimatesPoint 95% Wald
Effect Estimate Confidence Limitstype 1 vs 3 0.208 0.030 1.467type 2 vs 3 0.083 0.012 0.568
November 2008: Logistisk regression 45
Valg af akut lymfatisk leukæmi som referencekategori:
proc logistic data=gvhd;class type(ref="2") / param=ref;model gvhd(event="1")=type;
run;
Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSq
Intercept 1 -1.0986 0.5774 3.6208 0.0571type 1 1 0.9163 0.8367 1.1994 0.2734type 3 1 2.4849 0.9789 6.4432 0.0111
Odds Ratio Estimates
Point 95% WaldEffect Estimate Confidence Limits
type 1 vs 2 2.500 0.485 12.886type 3 vs 2 12.000 1.762 81.742
November 2008: Logistisk regression 46
SAS class statement genererer automatisk to binære
variable (indikatorvariable) for de kategorier som ikke er
reference:
I{type=1} =
{
1 hvis type = 1
0 ellersI{type=3} =
{
1 hvis type
0 ellers
Modellen bliver sa:
logit(p) = b0 + b1 × I{type=1}+ b2 × I{type=3}
= −1.0986 + 0.9163× I{type=1}
+ 2.4849× I{type=3}
November 2008: Logistisk regression 47
Page 17
Log-odds for GvHD for en patient med akut myeloid leukæmi
(type=1)
logit(p1) = ln(ω1) = b0 + b1 × 1 + b2 × 0 = b0 + b1
Log-odds for GvHD for en patient med akut lymfatisk lekæmi
(type=2)
logit(p2) = ln(ω2) = b0 + b1 × 0 + b2 × 0 = b0
Forskellen i log-odds mellem disse to typer af patienter er:
ln(ω1)− ln(ω2) = b0 + b1 − b0 = b1
November 2008: Logistisk regression 48
Dvs. odds ratio mellem AML og ALL er
ORAML vs. ALL =ω1
ω2= exp(b1) = exp(0.9163) = 2.5
Tilsvarende er odds ratio mellem CML og ALL
ORCML vs. ALL = exp(b2) = exp(2.4849) = 12
Hvad betyder interceptet?
November 2008: Logistisk regression 49
Log-odds for GvHD for en patient med AML (type=1)
logit(p1) = ln(ω1) = b0 + b1 × 1 + b2 × 0 = b0 + b1
Log-odds for GvHD for en patient med CML (type=3)
logit(p2) = ln(ω2) = b0 + b1 × 0 + b2 × 1 = b0 + b2
Forskellen i log-odds mellem disse to typer af patienter er:
ln(ω1)− ln(ω2) = b0 + b1 − (b0 + b2) = b1 − b2
Dvs. odds ratio mellem AML og CML er
ORAML vs. CML =ω1
ω2= exp(b1−b2) = exp(0.9163−2.4849) = exp(
November 2008: Logistisk regression 50
Page 18
Wald test for kategoriske forklarende variable
Det Wald χ2-test (med 1 frihedsgrad) vi tidligere har set pa
var beregnet for hver parameterestimat for sig. Med en
kategorisk forklarende variabel med mere end to niveauer vil
vi ogsa gerne udtale os om variablen er statistisk signifikant
associeret til risikoen for responsen. Til dette findes en
version af Wald χ2-testet med antal frihedsgrader lig antal af
kategorier minus 1. Dette kan man ogsa kalde et test for
uafhængighed mellem variablen og responsen.
November 2008: Logistisk regression 51
For variablen type fra GvHD eksemplet er antallet af
kategorier 3 sa Wald testet for hypotensen om ingen
sammenhæng mellem GvHD og type af leukæmi vil have 2
frihedsgrader. Dette svarer ogsa til ”simultant” at teste, at
begge parameterestimater for type er lig 0 – eller at teste
om alle tre kategorier har samme risiko for GvHD.
Heldigvis beregner SAS ogsa dette for os (i SAS kaldet ”Type
III analysis”). Det har ingen betydning for testet, hvilken
kategori der er blevet anvendt som reference:
November 2008: Logistisk regression 52
proc logistic data=gvhd;class type / param=ref;model gvhd(event="1") = type;
run;Type III Analysis of Effects
WaldEffect DF Chi-Square Pr > ChiSqtype 2 6.4478 0.0398
proc logistic data=gvhd;class type(ref="2") / param=ref;model gvhd(event="1")=type;
run;Type III Analysis of Effects
WaldEffect DF Chi-Square Pr > ChiSqtype 2 6.4478 0.0398
November 2008: Logistisk regression 53
Page 19
Effekt af centrering af kvantitativ forklarende
variabel
For GvHD data havde vi modellen
logit(p) = −2.6883 + 1.6982× preg + 0.0806× donage.
Interceptet er log-odds for GvHD for en patient hvis donor
aldrig har været gravid og donors alder var 0 ar. Centrerer vi
donage omkring gennemsnitsalder for donorer (som er 26 ar)
er interceptet log-odds for GvHD for en patient hvis donor
aldrig har været gravid og donors alder var 26 ar:
November 2008: Logistisk regression 54
data gvhd2;set gvhd;donage26=donage-26;
run;
proc logistic data=gvhd2;model gvhd(event="1")=preg donage26;
run;The LOGISTIC Procedure
Analysis of Maximum Likelihood EstimatesStandard Wald
Parameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 -0.5915 0.4298 1.8935 0.1688preg 1 1.6982 0.9289 3.3425 0.0675donage26 1 0.0806 0.0509 2.5096 0.1132
November 2008: Logistisk regression 55
Hvis kovariaterne centreres omkring en værdi:
• ændres estimaterne ikke
• ændres standardafvigelsen ikke
• Wald’s test og p-værdi forbliver den samme
• Interceptet kommer til at referere til log-odds for den værdi
af kovariaterne man centrerer omkring.
November 2008: Logistisk regression 56
Page 20
Interaktion
Modellen fra GvHD eksemplet:
logit(p) = b0 + b1 × preg + b2 × donage26
antager, at effekten af donors alder pa risikoen for GvHD er
den samme blandt donorer som har været hhv. ikke har
været gravide. Dette bør vi teste. Dette gøres typisk ved at
tilføje en ekstra variable interact som er produktet mellem
preg og donage26:
interact = preg*donage26
November 2008: Logistisk regression 57
Dvs.
interact =
{
donage26 hvis donor har været gravid
0 hvis donor ikke har været gravid
November 2008: Logistisk regression 58
Modellen bliver
logit(p) = b0 + b1 × preg + b2 × donage26 + b3 × interact
• b1 er forskellen i log-odds mellem preg=1 og preg=0 for
en donor med en alder pa 26 ar.
• b2 er effekten af donage26 blandt donorer som IKKE har
været gravide.
• b3 er den ekstra effekt donage26 har blandt donorer som
har været gravide ud over b2. Dvs. hvis denne effekt er lig
0 vil effekten af donage26 være den samme for donorer der
har hhv. ikke har været gravide.
November 2008: Logistisk regression 59
Page 21
proc logistic data=gvhd;class preg(ref="0") / param=ref;model gvhd(event="1")=preg donage26 interact;
run;Type 3 Analysis of Effects
WaldEffect DF Chi-Square Pr > ChiSqpreg 1 1.6188 0.2033donage26 1 0.9534 0.3288interact 1 0.8699 0.3510 <- TEST FOR INGEN INTERAKTION
Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 -0.6199 0.4198 2.1797 0.1398preg 1 1 2.2368 1.7580 1.6188 0.2033donage26 1 0.0514 0.0527 0.9534 0.3288interact 1 0.7153 0.7669 0.8699 0.3510
November 2008: Logistisk regression 60
proc logistic data=gvhd;class preg(ref="0") / param=ref;model gvhd(event="1")=preg donage26 preg*donage26; <----------------- LIDT LETTERE
run;
Type III Analysis of Effects
WaldEffect DF Chi-Square Pr > ChiSq
preg 1 1.6188 0.2033donage26 1 0.9534 0.3288donage26*preg 1 0.8699 0.3510
Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSq
Intercept 1 -0.6199 0.4198 2.1797 0.1398preg 1 1 2.2368 1.7580 1.6188 0.2033donage26 1 0.0514 0.0527 0.9534 0.3288donage26*preg 1 1 0.7153 0.7669 0.8699 0.3510
November 2008: Logistisk regression 61
Alternativ parametrisering til interaktion
To nye variable:
donage26 notpreg =
{
donage26 hvis donor aldrig gravid
0 hvis donor tidl. gravid
donage26 preg =
{
0 hvis donor aldrig gravid
donage26 hvis donor tidl. gravid
Modellen skal sa være
logit(p) = b0+b1×preg+b2×donage26 notpreg+b3×donage26
November 2008: Logistisk regression 62
Page 22
logit(p) = b0+b1×preg+b2×donage26 notpreg+b3×donage26
• b1 er forskellen i log-odds mellem preg=1 og preg=0 for
en donor med en alder pa 26 ar.
• b2 er effekten af donage26 blandt donorer som IKKE har
været gravide.
• b3 er nu effekten af donage26 blandt donorer som HAR
været gravide.
November 2008: Logistisk regression 63
data gvhd2;set gvhd;donage26_notpreg=donage26*(preg=0);donage26_preg=donage26*(preg=1);
run;
proc logistic data=gvhd2;class preg(ref="0") / param=ref;model gvhd(event="1")=preg donage26_notpreg donage26_preg;Interaction: test donage26_notpreg=donage26_preg; <- TEST FOR INGEN INTERAKTION
run;
November 2008: Logistisk regression 64
Analysis of Maximum Likelihood EstimatesStandard Wald
Parameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 -0.6199 0.4198 2.1797 0.1398preg 1 1 2.2368 1.7580 1.6188 0.2033donage26_notpreg 1 0.0514 0.0527 0.9534 0.3288donage26_preg 1 0.7667 0.7651 1.0042 0.3163
Odds Ratio Estimates
Point 95% WaldEffect Estimate Confidence Limitspreg 1 vs 0 9.363 0.299 293.655donage26_notpreg 1.053 0.950 1.167donage26_preg 2.153 0.481 9.644
Linear Hypotheses Testing Results
WaldLabel Chi-Square DF Pr > ChiSqInteraction 0.8699 1 0.3510 <- TEST FOR INGEN INTERAKTION
November 2008: Logistisk regression 65
Page 23
Ordnede kategoriske forklarende variable
Data fra DGA s. 261: Sammenhæng mellem kejsersnit og
skostørrelse (skostørrelse er en simpel indikator for størrelse
af bækken):
Skonummer
Kejsersnit < 4 4 4.5 5 5.5 ≥ 6 Ialt
Ja 5 7 6 7 8 10 43
Nej 17 28 36 41 46 140 308
I alt 22 35 42 48 54 150 351
Odds for kejsersnit er 0.29, 0.25, 0.17, 0.17, 0.17, 0.07 for
stigende skostørrelse.
November 2008: Logistisk regression 66
data sko;input cs $ skonr antal;cards;
Y 3.5 5Y 4.0 7Y 4.5 6Y 5.0 7Y 5.5 8Y 6.0 10N 3.5 17N 4.0 28N 4.5 36N 5.0 41N 5.5 46N 6.0 140;run;
proc logistic data=sko descending;class skonr / param=ref;model cs=skonr;weight antal;
run;
November 2008: Logistisk regression 67
Model Fit StatisticsIntercept
Intercept andCriterion Only CovariatesAIC 263.067 263.723SC 263.552 266.632-2 Log L 261.067 251.723
Testing Global Null Hypothesis: BETA=0Test Chi-Square DF Pr > ChiSqLikelihood Ratio 9.3442 5 0.0961Score 9.2874 5 0.0981Wald 8.6369 5 0.1245
Type 3 Analysis of EffectsEffect DF Chi-Square Pr > ChiSqskonr 5 8.6369 0.1245
Analysis of Maximum Likelihood EstimatesStandard Wald
Parameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 -1.2237 0.5087 5.7860 0.0162skonr 4 1 -0.1626 0.6614 0.0604 0.8058skonr 4.5 1 -0.5680 0.6732 0.7118 0.3988skonr 5 1 -0.5439 0.6527 0.6944 0.4047skonr 5.5 1 -0.5255 0.6368 0.6808 0.4093skonr 6 1 -1.4153 0.6049 5.4734 0.0193
November 2008: Logistisk regression 68
Page 24
proc logistic data=sko descending;model cs=skonr;weight antal;
run; Model Fit StatisticsIntercept
Intercept andCriterion Only CovariatesAIC 263.067 257.508SC 263.552 258.477-2 Log L 261.067 253.508
Testing Global Null Hypothesis: BETA=0
Test Chi-Square DF Pr > ChiSqLikelihood Ratio 7.5597 1 0.0060Score 8.0237 1 0.0046Wald 7.6971 1 0.0055
Analysis of Maximum Likelihood Estimates
Standard WaldParameter DF Estimate Error Chi-Square Pr > ChiSqIntercept 1 0.6877 0.9462 0.5283 0.4673skonr 1 -0.5194 0.1872 7.6971 0.0055 <- TEST FOR TREND
November 2008: Logistisk regression 69
Likelihood ratio test
Likelihood-ratio er forholdet mellem likelihood funktionens
maximum under to forskellige modeller, som alene adskiller
sig ved at den mindste “mangler” en eller flere parametre
(nestede modeller).
I SAS skal man køre de to modeller hver for sig og derefter
trække værdien af ”-2 Log L Intercept and
Covariates” for den største model fra ”-2 Log L
Intercept and Covariates” fra den mindste model. Dette
tal skal vurderes i en χ2-fordeling med antal frihedsgrader lig
forskellen i frihedsgrader (DF) i de to modeller.
November 2008: Logistisk regression 70
Test for linearitet
For at undersøge om den lineære model er acceptabel skal vi
sammenligne de to modeller
Model 1: skonr som en class variabel
Model 2: skonr som en kvantitativ variabel
Forskellen i ”-2 Log L Intercept and Covariates” er
(model 2) - (model 1) = 253.508− 251.723 = 1.785.
November 2008: Logistisk regression 71
Page 25
Antal frihedsgrader findes under overskriften
”Testing Global Null Hypothesis: BETA=0”:
DFmodel 1 − DFmodel 2 = 5− 1 = 4.
Dvs.
Likelihood ratio test = 1.785 ∼ χ2(4) ⇒ p = 0.775
Testet er IKKE signifikant sa vi accepterer den lineære model.
November 2008: Logistisk regression 72
Beregning af p-værdi i SASdata;
p=1-probchi(1.785,4);put p;
run;
-------------------- LOG VINDUE --------------------
40 data;41 p=1-probchi(1.785,4);42 put p;43 run;
0.7752255237NOTE: The data set WORK.DATA4 has 1 observations and 1 variables.NOTE: DATA statement used (Total process time):
real time 0.01 secondscpu time 0.01 seconds
November 2008: Logistisk regression 73
Præsentation af resultater fra logistisk
regression
Typisk vil man præsentere odds ratio med tilhørende 95%
confidensintervaller. For klassevariable vil man ogsa supplere
med en p-værdi fra testet om uafhængighed mellem variablen
og resonsen. Nogle tidsskrifter forlanger ogsa p-værdier for
hvert estimat men dette er unødvendigt da
confidensintervallet indeholder samme information.
November 2008: Logistisk regression 74
Page 26
Case-kontrol studier
• I et case-kontrol-studie udvælges:
– cases (sygdomstilfælde) som er verificeret fra et register
eller lignende
– kontroller, som er personer der repræsenterer den
population hvorfra cases stammer.
• Personer i case-kontrol-studier udvælges altsa pa baggrund
af udfaldet. Typisk vil man pa forhand fastsætte forholdet
mellem antallet af cases og kontroller.
November 2008: Logistisk regression 75
• Hvis en variabel har betydning for sygdommens udvikling:
Forskellig fordeling af variablen mellem cases og kontroller.
• Sandsynligheden for at være en case (i populationen),
p{sygdom} kan ikke estimeres ud fra et case-kontrol studie.
• Men effekten af kovariaterne pa sygdomssandsynligheden
kan!
November 2008: Logistisk regression 76
Case-kontrol studier
• I populationen:
p = P {case}p
1− p= odds(case)
• Udvælgelsesbrøker, dvs. inklusionssandsynligheder π0 og π1:
P {inklusion i studiet | case} = π1
P {inklusion i studiet | kontrol} = π0
November 2008: Logistisk regression 77
Page 27
• I et case-kontrol studie observerer man antallet af cases og
antallet af kontroller, betinget af at disse faktisk er med i
studiet.
• Afhænger af diverse kovariater
(det er det man interesseret i)
og
inklusionssandsynlighederne
(som man ikke er interesseret i).
November 2008: Logistisk regression 78
@@@@@@@
p
1− p
case
kontrol
�������
HHHHHHH
π1
1− π1
������
�
HHHHHHH
π0
1− π0
inkluderet
inkluderet
P {case & inkl.} = p× π1
P {kontrol & inkl.} = (1− p)× π0
odds(case|inkl.) =p× π1
(1− p)× π0=
p
1− p×
π1
π0
November 2008: Logistisk regression 79
Logistisk regression
• Model for populationen:
ln
[
p
1− p
]
= b0 + b1x1 + b2x2
• Model for det observerede:
ln[odds(case|inkl.)] = ln
[
p
1− p
]
+ ln
[
π1
π0
]
=
(
ln
[
π1
π0
]
+ b0
)
+ b1x1 + b2x2
November 2008: Logistisk regression 80
Page 28
• Analyse af P {case — inklusion} — dvs. binære
observationer:
Y =
{
1 ∼ case
0 ∼ kontrol
• Effekt af kovariater estimeres korrekt.
• Intercept uden mening. — afhænger af π0 og π1 der
sædvanligvis er ukendte.
November 2008: Logistisk regression 81