반응형
로지스틱 회귀분석은 독립변수가 여러개이고 종속변수가 한개인 경우 사용합니다. 독립변수는 연속형, 범주형 둘 다 가능하고 종속변수는 범주형이어야 합니다.
1. 데이터 살펴보기
로지스틱 회귀분석에 사용할 데이터는 boot 패키지의 nodal 데이터입니다. 아래와 같이 불러옵니다.
library(boot)
dt=nodal
> head(dt)
m r aged stage grade xray acid
1 1 1 0 1 1 1 1
2 1 1 0 1 1 1 1
3 1 1 0 1 1 1 1
4 1 1 0 1 1 1 1
5 1 1 0 1 1 1 1
6 1 0 0 1 1 1 1
변수 설명은 아래와 같습니다.
r : 전립선암 양성 여부
aged : 연령 (60 이하는 0, 초과는 1)
stage : 질병단계 (1이 더 심각)
grade :종양의 진행 정도 (1이 더 심각)
xray : x선 결과 (1이 더 심각)
acid : 혈청의 인산염값
2. 로지스틱 회귀분석
로지스틱 회귀분석에는 glm 함수가 사용됩니다. 반드시 family 를 binomial 로 설정해주어야 합니다.
res=glm(r~aged+stage+grade+xray+acid,data=dt,family='binomial')
summary(res)
> summary(res)
Call:
glm(formula = r ~ aged + stage + grade + xray + acid, family = "binomial",
data = dt)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.3317 -0.6653 -0.2999 0.6386 2.1502
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -3.0794 0.9868 -3.121 0.0018 **
aged -0.2917 0.7540 -0.387 0.6988
stage 1.3729 0.7838 1.752 0.0799 .
grade 0.8720 0.8156 1.069 0.2850
xray 1.8008 0.8104 2.222 0.0263 *
acid 1.6839 0.7915 2.128 0.0334 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 70.252 on 52 degrees of freedom
Residual deviance: 47.611 on 47 degrees of freedom
AIC: 59.611
Number of Fisher Scoring iterations: 5
Coefficients 부분에 있는 t검정은 각 변수의 계수가 0인지 아닌지를 판별합니다. p값이 0.05보다 크다는 것은 계수가 0이라는 것이고 해당 변수는 제외하고 로지스틱회귀분석을 다시 해줍니다. age와 grade를 제거합니다. stage 는 일단 한번 더 넣어줍니다.
res=glm(r~stage+xray+acid,data=dt,family='binomial')
summary(res)
> summary(res)
Call:
glm(formula = r ~ stage + xray + acid, family = "binomial", data = dt)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.1231 -0.6620 -0.3039 0.4710 2.4892
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -3.0518 0.8420 -3.624 0.00029 ***
stage 1.6453 0.7297 2.255 0.02414 *
xray 1.9116 0.7771 2.460 0.01390 *
acid 1.6378 0.7539 2.172 0.02983 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 70.252 on 52 degrees of freedom
Residual deviance: 49.180 on 49 degrees of freedom
AIC: 57.18
Number of Fisher Scoring iterations: 5
모델은 수식으로 표현하면 아래와 같습니다.
$f(X)=\frac{1}{1+e^{-\left ( -3.05+1.65stage+1.91xray+1.63acid \right )}}$
반응형
댓글