라벨인코딩은 데이터사이언스, 머신러닝 과정에서 많이 사용하는 기능입니다. Scikit Learn에서는 간단한 라벨인코딩 기능을 제공하는데요. 오늘은 그 간단한 기능을 살짝 설명하려고 합니다.
오늘은 아이리스 데이터를 대상으로 하겠습니다.
아이리스 데이터를 불러와서 데이터는 value 위치에, feature_names는 컬럼이름으로 잡고, 아이리스의 품종을 의미하는 target 데이터도 컬럼으로 포함시켰습니다.
target_names의 경우는 setosa, versicolor, virginica로 세 가지입니다.
라벨인코딩이라는 것은 이름으로 되어있는 것을 숫자로 혹은 그 반대로 변환하는 것입니다.
그렇게 해주는 기능을 손쉽게 sklearn이 제공하는 것이지요.
라벨인코딩 기능을 사용하기 위해서 sklearn의 preprocessing의 LabelEncoder를 import 합니다. 그리고, instantiation하고, target_names(setosa, versicolor, virginica)로 fit 시킵니다.
확인해보면 간단히 잘 되었다는 것을 알 수 있구요~
이렇게 이름은 transform 기능을 이용하면 숫자로~
숫자는 inverse_transform하면 이름으로 변환해 주는 것입니다.
target에 있는 저 숫자들(0, 1, 2)은
inverse_transform을 하면 한 번에 이름으로 다 변환됩니다.~
그럼 species라는 컬럼을 만들어서 이렇게 품종의 이름을 추가할 수 있습니다.^^
반응형
'Theory > MachineLearning' 카테고리의 다른 글
전처리와 학습 과정을 하나의 과정으로 실행하는 sklearn의 pipeline (10) | 2020.04.06 |
---|---|
머신러닝을 이용한 Human Activity Recognition 실습 (12) | 2019.10.29 |
Scikit Learn (sklearn) SGDRegressor 사용할 떄 Loss 그래프 확인하는 방법 (10) | 2019.09.23 |
결정트리를 이용한 타이타닉 생존자 예측 (26) | 2018.07.02 |
연습삼아 해보는 비트코인(bitcoin) 시세 예측하기 - 그런데 비트코인이랑 목요일이 뭔 관계가 있나??? (34) | 2018.01.08 |
주가 예측? 나도 해보자~ Forecast 수행에 적합한 Prophet (20) | 2017.08.03 |