본문 바로가기
카테고리 없음

[Python] pandas의 get_dummies을 이용한 원핫인코딩

by Gabbyit 2023. 4. 3.

One-Hot Encoding? (원핫인코딩)

범주형 피처의 각 범주에 대해 별도의 열을 만들고 더미변수로 변환하는 기법

원핫인코딩을 하는 이유?
--> Label Encoding에서 일어나는 가중치 문제가 발생하지 않기 때문

원핫인코딩 실습

아래와 같은 데이터프레임이 있다.

'species' 피처와 'color' 피처는 범주형 데이터이므로, 수치화를 해주어야 하고 이때 원핫인코딩을 이용해보자.


판다스의 get_dummies를 이용하면 특정 피처에 대한 더미변수를 만들 수 있다.

먼저 'species' 피처의 더미변수를 만들어보자.

다음으로 동일한 방법으로 'color' 피처의 더미변수를 만들자.

기존 데이터프레임에 원핫인코딩을 적용하기 위해 더미변수를 기존 데이터프레임과 합치고 범주형 데이터인 'species', 'color' 피처는 제거하자.
이때 판다스의 concat 함수를 이용한다. 옵션에서 axis=1로 설정해주어야 열 방향으로 합쳐진다. (default는 axis=0)

 

댓글