더북(TheBook)

4.2.4 순서가 없는 특성에 원-핫 인코딩 적용

‘4.2.2절 순서가 있는 특성 매핑’에서 간단한 딕셔너리 매핑 방식을 사용하여 순서를 가진 size 특성을 정수로 변환했습니다. 사이킷런의 분류용 추정기는 클래스 레이블을 순서가 없는 범주형 데이터로 다루기 때문에 LabelEncoder를 사용하여 간편하게 문자열 레이블을 정수로 인코딩했습니다. 순서가 없는 color 열에도 비슷한 방식을 사용할 수 있습니다.

>>> X = df[['color', 'size', 'price']].values
>>> color_le = LabelEncoder()
>>> X[:, 0] = color_le.fit_transform(X[:, 0])
>>> X
array([[1, 1, 10.1],
       [2, 2, 13.5],
       [0, 3, 15.3]], dtype=object)

앞 코드를 실행하면 넘파이 배열 X의 첫 번째 열은 이제 다음과 같은 새로운 color 값을 가집니다.

blue = 0

green = 1

red = 2

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.