인공지능/머신러닝
머신러닝 : 원 핫 인코딩 One Hot Encoding
왕현성
2022. 12. 1. 10:54
728x90
# 레이블 인코딩으로 변환한 후에, 학습을 시켰을 때 ,,,,
# 카테고리컬의 데이터의 갯수가 3개 이상일 때는,
# 레이블 인코딩으로 학습하면 학습이 잘 안된다.
# 이렇게 3개 이상의 카테고리컬 데이터는 One-Hot Encoding을
# 이용해서 처리하면, 학습이 잘 된다.
from sklearn.preprocessing import LabelEncoder, OneHotEncoder
from sklearn.compose import ColumnTransformer
ct=ColumnTransformer([('encoder', OneHotEncoder(),[2])],remainder='passthrough')
ct.fit_transform(X)
맨 아래 사진과 같이 결과를 얻을 수 있다.
원핫인코딩이 수행된 컬럼은, 항상 행렬의 맨 왼쪽에 나온다. ( 컬럼 인덱스가 0이 아닌 다른 숫자여도 0번 인덱스 컬럼부터 시작된다 )