라벨 인코더
iris 데이터를 기준으로 설명하겠다.
아이리스 데이터를 보게되면 중간에 varierty 항에 변수형이 문자가 들어가 있다.
이럴경우 숫자로 변경해주어야하는데 이떄 사용하는 것이 label encoder이다.
from sklearn.preprocessing import LabelEncoder
#train_x = iris.drop(['varierty', axis =1])
#test_x = iris.drop(['varierty', axis =1])
# 데이터 타입이 object인 varierty column을 숫자로 변경 합니다
qual_col = ['variety']
for i in qual_col:
lebel1 = LabelEncoder()
lebel1 = lebel1.fit(train_x[i])
train_x[i] = lebel1.transform(train_x[i])
#테스트 데이터에만 존재하는 Label이 있을 수 있으므로 예외처리
for label in np.unique(test_x[i]):
if label not in lebel1.classes_:
lebel1.classes_ = np.append(lebel1.classes_, label)
test_x[i] = lebel1.transform(test_x[i])
print(train['variety'])
위 코드를 적용하면 variety 항의 string or object 타입의 변수들이
0, 1, 2 등으로 각각 레이블링이 되어진다.
'컴퓨터 마스터되기' 카테고리의 다른 글
[matplotlib] 플롯 그리기 (0) | 2024.05.08 |
---|---|
[pandas] 데이터 정리 방 (0) | 2024.05.08 |
padas 데이터 구조 확인 방법 (0) | 2024.05.08 |
머신러닝 주로쓰는 라이브러리 정리 (0) | 2024.05.08 |
mariadb 데이터 베이스 오류 (error 2002 (hy000): can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock' (111 "connection refused")) (0) | 2021.03.25 |