Python으로 Kaggle 대회 공략하기
Yauhen Babakhin
Kaggle Grandmaster
| ID | 범주형 특성 |
|---|---|
| 1 | A |
| 2 | B |
| 3 | C |
| 4 | A |
| 5 | D |
| 6 | A |
| ID | 레이블 인코딩 |
|---|---|
| 1 | 0 |
| 2 | 1 |
| 3 | 2 |
| 4 | 0 |
| 5 | 3 |
| 6 | 0 |
# LabelEncoder 가져오기 from sklearn.preprocessing import LabelEncoder# LabelEncoder 객체 생성 le = LabelEncoder()# 범주형 특성 인코딩 df['cat_encoded'] = le.fit_transform(df['cat'])
ID cat cat_encoded
0 1 A 0
1 2 B 1
2 3 C 2
3 4 A 0
| ID | 범주형 특성 |
|---|---|
| 1 | A |
| 2 | B |
| 3 | C |
| 4 | A |
| 5 | D |
| 6 | A |
| ID | Cat == A | Cat == B | Cat == C | Cat == D |
|---|---|---|---|---|
| 1 | 1 | 0 | 0 | 0 |
| 2 | 0 | 1 | 0 | 0 |
| 3 | 0 | 0 | 1 | 0 |
| 4 | 1 | 0 | 0 | 0 |
| 5 | 0 | 0 | 0 | 1 |
| 6 | 1 | 0 | 0 | 0 |
# 원-핫 인코딩 특성 생성 ohe = pd.get_dummies(df['cat'], prefix='ohe_cat')# 원본 특성 제거 df.drop('cat', axis=1, inplace=True)# OHE 특성을 데이터프레임에 결합 df = pd.concat([df, ohe], axis=1)
ID ohe_cat_A ohe_cat_B ohe_cat_C ohe_cat_D
0 1 1 0 0 0
1 2 0 1 0 0
2 3 0 0 1 0
3 4 1 0 0 0
# 이진 특성이 있는 DataFrame
binary_feature
binary_feat
0 Yes
1 No
le = LabelEncoder()
binary_feature['binary_encoded'] = le.fit_transform(binary_feature['binary_feat'])
binary_feat binary_encoded
0 Yes 1
1 No 0
Python으로 Kaggle 대회 공략하기