본문 바로가기
AI/회귀

[회귀 - 6] 가변수의 함정

by Nhahan 2022. 4. 23.
Profit R&D Spend Admin Marketing State
213 165 136 471 New York
251 162 151 443 California
212 153 101 407 California
261 144 118 383 New York
209 142 91 366 California

다중 선형 회귀란 독립변수가 2개 이상 있는 식이다.

만약 위 표를 선형 회귀로 만든다면 어떻게 될까? 당연히 종속변수는 Profit이 될 것이다.

y = b0 + b1 * x1 + b2 * x2 + b3 * x3 + ???

 

그런데 State는 어떻게 넣어야할까? (???가 State)

여기서 중요한 점은 State가 범주형 변수라는 것이다. 범주형 변수는 이 상태로 회귀식에 넣을 수 없다.

 

State에는 New York과 California가 있다. 우리는 State컬럼을 가변수(Dummy variables)로 만들어 데이터 세트를 확장해야한다.

그럼 State열는 다음과 같이 변형된다.

New York California
1 0
0 1
0 1
1 0
0 1

 

그럼 표는 아래와 같이 바뀐다.

Profit R&D Spend Admin Marketing New York California
213 165 136 471 1 0
251 162 151 443 0 1
212 153 101 407 0 1
261 144 118 383 1 0
209 142 91 366 0 1

이제 우리는 위 표를 회귀 모형으로 만들 수 있게 되었다.

y = b0 + b1 * x1 + b2 * x2 + b3 * x3 + b4 * D1

 

그러나 이 식은 실제로는 California열을 제외한 표를 나타낸 것과 같다.

Profit R&D Spend Admin Marketing New York
213 165 136 471 1
251 162 151 443 0
212 153 101 407 0
261 144 118 383 1
209 142 91 366 0

왜냐하면 New York열이 0이면 New York이고, 1이면 California기 때문이다.

여기서 중요한 점은,

 

범주형 데이터로 회귀 모형을 만들 때 절대 가변수 열을 모두 포함해서 만들면 안된다는 것이다.

 

 

정리하면, 모형을 만들 때 가변수의 열을 모두 포함하지 않고 1개를 제외해야한다는 것이다.

이를 가변수의 함정이라 한다.

 

범주형 데이터를 양적 데이터로 변환했을 때, 컬럼이 3개가 되었다고 가정하고 이를 A, B, C라고 해보자. 이 때, A와 B가 0이면 C가 1이라는 것을 자연스럽게 유추할 수 있다.

 

우리의 표를 가지고 보면 New York이 1이면 California가 0임을, New York이 0이면 California가 1임을 알 수 있음을 뜻한다.

댓글