로지스틱 회귀분석

1. 실습 개요

2. 범주형 자료 분석이란?

범주형 자료와 MLE

로짓 모형

2020년에는 국회의원 선거가 있었습니다. 유권자 66.2%가 투표에 참여했는데요, 투표참여를 결정하는 요인에는 무엇이 있을까요? 먼저 “지지 정당이 있는 경우, 투표 참여 가능성이 높아질 것”이라는 가설로부터 오늘 주제의 이야기를 시작해보겠습니다.

<aside> 🧑🏻‍💻 tab q21 recode q21 (1=1 “참여”) (2=0 “불참”), gen(vote2020) // 로짓분석 위해서는 DV를
label variable vote2020 “2020 총선 참여 여부” // 0과 1로 코딩해야 합니다.

tab q24 recode q24 (1=1 “있다”) (2=0 “없다”), gen(partisan) label variable partisan “지지 정당 유무”

tab vote2020 partisan, col reg vote2020 partisan

logit vote2020 partisan logit vote2020 partisan, nolog

</aside>

계수는 약 1.4851 절편은 약 1.7393 으로 추정되었습니다. 이때 계수가 의미하는 바는 무엇일까요?

Untitled

Pr(y=1 | x) 는 x가 어떤 값일 때 Y가 1일 확률 e = 2.718…. exp(선형 모형: $\beta_0 + \beta_1*X$)

Pr(y=1 | x=1) $exp(1.48511 + 1.7393)/(1+ exp(1.48511 + 1.7393))$

Pr(y=1 | x=0) $exp(1.48510 + 1.7393)/(1+ exp(1.48510 + 1.7393))$

<aside> 🧑🏻‍💻 display exp(1.48511 + 1.7393)/(1+ exp(1.48511 + 1.7393)) display exp(1.4851*0 *+ 1.7393)/(1+ exp(1.4851**0 + 1.7393))

logit vote2020 partisan prvalue, x(partisan = 1) prvalue, x(partisan = 0)

prtab partisan margins, at(partisan=(0 1))

</aside>

지지정당 있음 지지정당 없음
투표참여 확률 0.9617 0.8506
투표참여 오즈 25.1097 5.6934
오즈비 4.4103 = exp(b: 1.4851)
      - 오즈(odds) 는 사건이 발생하지 않을 확률 대비 사건이 발생할 확률을 계산한 것입니다. 
            e.g., 물과 간장을 3:1 로 섞어라 = 물이 간장의 3배가 되도록 섞어라 = 물을 75% 로 하라.

- 로짓 모형에서 회귀계수에 exp 를 적용한 것은 X가 한 단위 변화할 때 Y 오즈가 변하는 비율!

- 달리 말하면, 회귀계수는 로그-오즈비를 의미하며, 보고할 때는 “X가 한 단위 변화 (지지무 → 
  지지유) 할 경우 event가 발생할 (투표 참여) 가능성 (odds) ****이 exp(b)배 만큼 높아진다" 라고 
  말합니다. 

- 그렇지만 일반 확률 개념에 익숙해진 연구자로서는 로그-오즈비가 직관적이지 않습니다. 

- 따라서 대부분 경우, 예측 확률을 계산한 다음 그림을 그려 사건이 일어날 확률 변화를 
  도식적으로 보여줍니다. (오즈나 오즈비, 로그오즈비는 올드스타일) 

요약

기울기 X가 한 단위 변화(증가)할 때 변동하는 오즈 .. 그 변동 비율에 로그를 취한 것: 로그-오즈비

exp(기울기) X가 한 단위 변화할 때의 오즈비 변화(비율)
[e.g. X가 1일 때의 오즈 (p/1-p) v. X가 2일 때의 오즈]

절편 모든 독립변수가 0 일 때의 오즈

예측 확률 오즈로부터 역으로 계산된 확률

선형관계인 것 X와 로그-오즈비

비선형 관계 X와 예측 확률, X와 오즈

앞서 살펴본 투표 참여 예시를 다른 통제변인을 추가하여 다시 살펴보겠습니다.

<aside> 🧑🏻‍💻 logit vote2020 partisan female age house_inc liberal

</aside>

Screen Shot 2023-01-23 at 9.34.26 PM.png

Partisan 이 한 단위 변화할 때 (없음→있음) 투표를 할 “가능성(오즈)” 이 exp(1.20018) 배 증가.

(i) 모든 통제변수를 그 평균에 고정한 가운데, 지지정당이 없는 경우, 투표를 할 확률: 0.8798

(ii) 모든 통제변수를 그 평균에 고정한 가운데, 지지정당이 없는 경우, 투표를 할 오즈

 (p/1-p): 7.3195

7.3195 * exp(1.20018) = 24.30587

when $p_1/(1-p_1)$ = 24.30587 … $p_1$ would be 0.96048

<aside> 👨🏻‍💻 prtab partisan, rest(mean) prtab house_inc, rest(mean)

prvalue, x(partisan=0 female=1 age=1 house_inc=1 liberal=1) prvalue, x(partisan=1 female=0 age=5 house_inc=12 liberal=5)

prgen house_inc, gen(pr_) from(1) to(12) gap(1) rest(mean) ci

graph twoway (connected pr_p1 pr_x, mcolor(none)) (connected pr_p1ub pr_x, clpat(dash) mcolor(none)) (connected pr_p1lb pr_x, clpat(dash) mcolor(none))

</aside>

<aside> 🧑🏻‍💻 logit vote2020 partisan female age house_inc ib3.edu liberal

prtab partisan, rest(mean) prvalue, x(partisan=0 female=1 age=1 house_inc=1 edu=3 liberal=1)
// factors not allowed

margins, at(partisan=(0 1)) atmeans margins, at(partisan=0 female=1 age=1 house_inc=1 edu=1 liberal=1) margins, at(partisan=1 female=0 age=5 house_inc=12 edu=4 liberal=5)

margins, at(partisan=(0 1)) atmeans marginsplot

margins, at(house_inc=(1(1)12)) atmeans marginsplot, xlab(1 7 12)

margins, at(house_inc=(1(1)12) partisan=(0 1)) atmeans marginsplot, xlab(1 7 12)

</aside>

연습문제 9