군침이 싹 도는 코딩

Dummy variable trap 본문

Python/Deep Learning

Dummy variable trap

mugoori 2022. 12. 27. 16:25
X
>>> array([[1.0, 0.0, 0.0, ..., 1, 1, 101348.88],
           [0.0, 0.0, 1.0, ..., 0, 1, 112542.58],
           [1.0, 0.0, 0.0, ..., 1, 0, 113931.57],
           ...,
           [1.0, 0.0, 0.0, ..., 0, 1, 42085.58],
           [0.0, 1.0, 0.0, ..., 1, 0, 92888.52],
           [1.0, 0.0, 0.0, ..., 1, 0, 38190.78]], dtype=object)




X[:,1:]
>>> array([[0.0, 0.0, 619, ..., 1, 1, 101348.88],
           [0.0, 1.0, 608, ..., 0, 1, 112542.58],
           [0.0, 0.0, 502, ..., 1, 0, 113931.57],
           ...,
           [0.0, 0.0, 709, ..., 0, 1, 42085.58],
           [1.0, 0.0, 772, ..., 1, 0, 92888.52],
           [0.0, 0.0, 792, ..., 1, 0, 38190.78]], dtype=object)

# 원핫 인코딩을 하고서 3개로 갈라진 컬럼중에 맨 왼쪽 컬럼은 삭제해도

0과 1로 데이터를 전부 나타 낼수 있다

앞의 세가지 컬럼은 France, Germerny, Spain 이라는 컬럼인데

예를 들어

Germerny, Spain
       0            0      => 프랑스
       1            0      => 독일
       0            1      => 스페인

이런식으로 맨 왼쪽인 France를 삭제해도 나머지 둘의 값이 0이면 

그것이 프랑스라는것을 알 수 있다

이것을 더미 바리에이블 트랩이라고 한다