본문 바로가기

Theory/MachineLearning

Scikit Learn을 이용한 라벨인코딩 - LabelEncode

라벨인코딩은 데이터사이언스, 머신러닝 과정에서 많이 사용하는 기능입니다. 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라는 컬럼을 만들어서 이렇게 품종의 이름을 추가할 수 있습니다.^^

반응형