기계 학습을 위해 범주 형 데이터를 숫자 값으로 변환하고 있습니다.
예를 들어, 자동차의 구매 가격 (= "구매"변수)은 "vhigh, high, med, low"로 분류됩니다. 그것을 숫자 값으로 변환하기 위해 다음을 사용했습니다.
le = preprocessing.LabelEncoder()
buying = le.fit_transform(list(data["buying"]))
이것이 무작위로 수행되기 때문에 파이썬이 각 레이블을 숫자 값으로 얼마나 정확하게 변환했는지 확인할 수있는 방법이 있습니까 (예 : vhigh = 0, high = 2)?
데이터 프레임에 추가 열을 만들어 값을 매핑 할 수 있습니다.
mapping_df = data[['buying']].copy() #Create an extra dataframe which will be used to address only the encoded values
mapping_df['buying_encoded'] = le.fit_transform(data['buying'].values) #Using values is faster than using list
다음은 전체 작동 예입니다.
import pandas as pd
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
data = pd.DataFrame({'index':[0,1,2,3,4,5,6],
'buying':['Luffy','Nami','Luffy','Franky','Sanji','Zoro','Luffy']})
data['buying_encoded'] = le.fit_transform(data['buying'].values)
data = data.drop_duplicates('buying').set_index('index')
print(data)
산출:
buying buying_encoded
index
0 Luffy 1
1 Nami 2
3 Franky 0
4 Sanji 3
5 Zoro 4
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다