Pandas/전처리
판다스 - 원핫인코딩 : get_dummies
Data_Pistachio
2020. 7. 7. 13:37
반응형
범주형 데이터는 연산이 어렵기 때문에
숫자형으로 처리 가능하게 바꿔주는 것
- 범주형 데이터의 각 범주(category)를 컬럼 레벨로 변경
- 해당 범주에 해당하면 1로, 아니면 0으로 채우는 인코딩 기법
pd.get_dummies(데이터프레임, columns=[컬럼명, ...,])
데이터 불러오기
위 데이터프레임에서 Pclass와 성별 컬럼을 원핫인코딩을 해보자
1. Pclass
우선 Pclass에는 1, 2, 3의 값만 있다.
즉 3개의 컬럼이 추가될 것이고, 해당 값이 있는 행에는 1을 넣어준다.
pd.get_dummies를 이용하니
기존의 Pclass 컬럼은 사라졌다.
0번행은 Pclass가 3이었으니 Pclass_3 컬럼에만 1이 있고
Pclass_2, Pclass_1 컬럼에는 0만 있다.
drop_first=True
파라미터에 drop_first=True를 주게되면
Pclass_1 컬럼이 없어졌다.
이를 하는 이유는 Pclass_1의 값을 나머지 두개의 컬럼을 보고 유추할 수 있기 때문이다.
1번행을 보면 Pclass_2와 Pclass_3의 값이 0이므로 Pclass_1은 1이 될 것이다.
이렇게 첫번째 카테고리 값을 생략할 수도 있다.
2. Pclass와 성별
columns에 복수개의 컬럼명을 넣어줄 수도 있다.
기존의 Pclass와 성별 컬럼은 사라졌다.
이 또한 drop_first를 True로 주어
각 더미마다 첫번째 카테고리를 생략할 수도 있다.
반응형