Lec-4 Logistic Regression
Lec-4 Logistic Regression
0.8
0.6
y
0.4
0.2
-10 -8 -6 -4 -2 0 2 4 6 8 10 12
x
exp bo + b1• x
y=
+ exp bo + b1• x
Binary Logistic Regression via R
> logitmodel=glm(Gender~Hgt,family=binomial,
data=Pulse)
> summary(logitmodel)
Call:
glm(formula = Gender ~ Hgt, family = binomial)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.77443 -0.34870 -0.05375 0.32973 2.37928
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 64.1416 8.3694 7.664 1.81e-14 ***
Hgt -0.9424 0.1227 -7.680 1.60e-14***
---
Call:
glm(formula = Gender ~ Hgt, family = binomial, data = Pulse)
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 64.1416 8.3694 7.664 1.81e-14 ***
Hgt -0.9424 0.1227 -7.680 1.60e-14***
---
Call:
glm(formula = Made ~ Length, family = binomial, data =
Putts1)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.8705 -1.1186 0.6181 1.0026 1.4882
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 3.25684 0.36893 8.828 <2e-16 ***
Length -0.56614 0.06747 -8.391 <2e-16 ***
---
1.5
1.0
Linear part of
logistic fit
logitPropMade
0.5
0.0
-0.5
3 4 5 6 7
PuttLength
Probability Form of Putting Model
1.0
e 3.257 0.566 Length
ˆ
1 e 3.257 0.566 Length
0.8
Probability Made
0.6
0.4
0.2
0.0
2 4 6 8 10 12
PuttLength
Odds
Definition:
P (Yes )
is the odds of Yes.
1 P( No)
odds
odds
1 1 odds
Fair die
Event Prob Odds
even # 1/2 1 [or 1:1]
X>2 2/3 2 [or 2:1]
roll a 2 1/6 1/5 [or 1/5:1 or 1:5]
π increases
by .231
x increases
by 1
π increases by .072
Odds
Logit form of the model:
is replaced by
So the ratio is
Example: TMS for Migraines
Transcranial Magnetic Stimulation vs. Placebo
Pain Free? TMS Placebo
YES 39 22
NO 61 78
Total 100 100
ˆ Placebo 0.22 22
odds Placebo 0.282
78
Odds are 2.27 times higher of getting
relief using TMS than placebo
Logistic Regression for TMS data
> lmod=glm(cbind(Yes,No)~Group,family=binomial,data=TMS)
> summary(lmod)
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.2657 0.2414 -5.243 1.58e-07 ***
GroupTMS 0.8184 0.3167 2.584 0.00977 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
data: datatable
X-squared = 6.8168, df = 1, p-value = 0.00903
> lmod=glm(cbind(Yes,No)~Group,family=binomial,data=TMS)
> summary(lmod)
Call:
Binary Logistic Regression
glm(formula = cbind(Yes, No) ~ Group, family = binomial)Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.2657 0.2414 -5.243 1.58e-07 ***
GroupTMS 0.8184 0.3167 2.584 0.00977 **
A Single Binary Predictor for a Binary Response
Response variable: Y = Success/Failure
Predictor variable: X = Group #1 / Group #2
• Method #1: Binary logistic regression
• Method #2: Z- test, compare two proportions
• Method #3: Chi-square test for 2-way table
log 0 1 X
1
⇒ odds e 0 1 X
> summary(PuttModel)
Call:
glm(formula = Made ~ Length, family = binomial)
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 3.25684 0.36893 8.828 <2e-16 ***
Length -0.56614 0.06747 -8.391 <2e-16 ***
---
Null deviance: 800.21 on 586 degrees of freedom
Residual deviance: 719.89 on 585 degrees of freedom
Two forms of logistic data
1. Response variable Y = Success/Failure or 1/0: “long
form” in which each case is a row in a spreadsheet
(e.g., Putts1 has 587 cases). This is often called
“binary response” or “Bernoulli” logistic regression.
2. Response variable Y = Number of Successes for a
group of data with a common X value: “short form”
(e.g., Putts2 has 5 cases – putts of 3 ft, 4 ft, … 7 ft).
This is often called “Binomial counts” logistic
regression.
Binary Logistic Regression Model
Y = Binary X = Single predictor
response
π = proportion of 1’s (yes, success) at any x
Equivalent forms of the logistic regression model:
Logit form log 0 1 X
1
o 1 X
Probability form e
o 1 X
1 e
Binary Logistic Regression Model
Y = Binary X1,X2,…,X
X = Single
k = Multiple
predictor
response predictors
π = proportion of 1’s (yes,
at anysuccess)
x1, x2, …,
at xany x
k
o 1 X 1 2 X 2 k X k
Probability form e
o 1 X 1 2 X 2 k X k
1 e
Interactions in logistic regression
Consider Survival in an ICU as a function of
SysBP -- BP for short – and Sex
> intermodel=glm(Survive~BP*Sex, family=binomial, data=ICU)
> summary(intermodel)
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.439304 1.021042 -1.410 0.15865
BP 0.022994 0.008325 2.762 0.00575 **
Sex 1.455166 1.525558 0.954 0.34016
BP:Sex -0.013020 0.011965 -1.088 0.27653
Lines are
very close
to parallel;
not a
significant
interaction
Generalized Linear Model
(1) What is the link between Y and b 0 + b1X?
(a) Regular reg: indentity
(b) Logistic reg: logit
(c) Poisson reg: log
(2) What is the distribution of Y given X?
(a) Regular reg: Normal (Gaussian)
(b) Logistic reg: Binomial
(c) Poisson reg: Poisson
C-index, a measure of concordance
Accept.hat
Acceptance FALSE TRUE
0 18 7
1 7 23
18 + 23 = 41 correct out of 55