LabelEncoder

»çÀÌŶ·±ÀÇ LabelEncoder¸¦ ¾Ë¾Æ º¸ÀÚ.

¸Ó½Å·¯´×°ú »çÀÌŶ·±¿¡¼­´Â ¼ýÀÚ¸¸ ó¸® ÇÒ¼ö Àֱ⠶§¹®¿¡ LabelEncoder·Î ¹®ÀÚ¿­À» ¼ýÀÚ·Î º¯È¯ÇÑ´Ù.
¿ªÀ¸·Î ¼ýÀÚ¸¦ ¹®ÀÚ¿­·Î º¯È¯ ÇÒ¼öµµ ÀÖ´Ù.

LabelEncoder¸¦ ¾Ë¾Æ º¸±âÀü¿¡ »çÀÌŶ·±ÀÇ fit, transformÀÇ °³³ä¿¡ ´ëÇؼ­ ¾Ë¾Æº¸ÀÚ.

fit :
- ÀÔ·Â µ¥ÀÌÅÍ¿¡ ¸Ó½Å ·¯´× ¸ðµ¨À» ¸ÂÃá´Ù
- Áï, ÀÔ·Â µ¥ÀÌÅÍ¿¡ ¸ÂÃç »çÀü ÀÛ¾÷À» ÇÑ´Ù.
- ±âÁØÀ» ¼³Á¤ÇÑ´Ù.
- µ¥ÀÌÅÍÀÇ Ä®·³º°·Î Æò±Õ, Ç¥ÁØÆíÂ÷µîÀ» ±¸Çؼ­ °ªÀ» ÀúÀåÇÑ´Ù.

transform:
- fit¿¡ ±¸ÇÑ °ªÀ» ±âÁØÀ¸·Î µ¥ÀÌÅ͸¦ º¯ÇüÇÑ´Ù.

from sklearn.preprocessing import LabelEncoder
import numpy as np

fruits = ['apple', 'orange', 'mandarin']

»çÀÌŶ·±ÀÇ LabelEncoder¸¦ ÀÓÆ÷Æ® ÇÏ°í °úÀÏ(fruits) ¸®½ºÆ®¸¦ ¸¸µç´Ù.

#LabelEncoder »ý¼º, ÇнÀ, º¯È¯
encoder = LabelEncoder()
encoder.fit(fruits)
labels = encoder.transform(fruits)
labels

array([0, 2, 1])

¶óº§ÀÎÄÚ´õ·Î »ý¼ºÇÑ´Ù.
encoder = LabelEncoder()

¶óº§ÀÎÄÚ´õ·Î ÇнÀÇÑ´Ù.
encoder.fit(fruits)

¶óº§ÀÎÄÚ´õ·Î ¼ýÀÚ·Î º¯È¯ÇÑ´Ù.
labels = encoder.transform(fruits)

#encoderÀÇ Å¬·¡½º Ãâ·Â
encoder.classes_

array(['apple', 'mandarin', 'orange'], dtype='<U8')

encoderÀÇ Å¬·¡½º¸¦ Ãâ·ÂÇÑ´Ù.

encoder.inverse_transform([0, 1, 2])

array(['apple', 'mandarin', 'orange'], dtype='<U8')

encoder.iverse_transform ÇÔ¼ö·Î ¿ø·¡ ¹®ÀÚ¿­·Î º¯È¯ ÇÒ¼öµµ ÀÖ´Ù.