출처: https://astrocosmos.tistory.com/202 [ASTROCOSMOS:티스토리] 데이터 전처리 가변수화] one-hot encoding, pd.get_dummies :: 하나둘셋넷
728x90

데이터 전처리 가변수화] one-hot encoding, pd.get_dummies

one-hot encoding

 

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

각 범주를 독립된 열로 나타내며, 해당 범주에 속하는 경우 1, 그렇지 않은 경우 0으로 표시

예를 들어, '색상'이라는 특성이 '빨강', '파랑', '초록' 세 가지 범주를 가질 때, 원-핫 인코딩은 이를 세 개의 열로 변환합니다 ('빨강', '파랑', '초록'). 각 열은 해당 색상이면 1, 아니면 0으로 표시됩니다.

 

- 가변수화(Dummy Variable Encoding):

원-핫 인코딩과 유사하지만, 범주 중 하나를 기준(기준 범주)으로 삼아 그 범주를 제외한 나머지 범주에 대해서만 열을 생성

이 방법은 다중공선성(multicollinearity) 문제를 방지하기 위해 사용되며, 통계 모델링에서 자주 사용

예를 들어, 위와 같은 '색상' 특성에 대해 가변수화를 적용할 때, '빨강'을 기준으로 삼으면 '파랑'과 '초록'에 대해서만 열이 생성

 

 

 

pd.get_dummies 함수를 사용하여 drop_first=True 옵션을 설정한 경우, 이는 원-핫 인코딩을 수행하되 첫 번째 범주를 제외한 가변수화(dummy variable encoding)에 해당

 

cat_cols = ['ShelveLoc', 'Education', 'US', 'Urban']
x = pd.get_dummies(x, columns = cat_cols, drop_first = True)

728x90

+ Recent posts