WenyingDai
5/3/2018 - 8:46 AM

LabelEncoder and OnehotEncoder

#简单来说 LabelEncoder 是对不连续的数字或者文本进行编号
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
le.fit([1,5,10,100])
le.transform([1,1,100,10,5])
输出: array([0,0,3,2,1])


#OneHotEncoder 用于将表示分类的数据扩维:
from sklearn.preprocessing import OneHotEncoder
ohe = OneHotEncoder()
ohe.fit([[1],[2],[3],[4]])
ohe.transform([2],[3],[1],[4]).toarray()
输出:[ [0,1,0,0] , [0,0,1,0] , [1,0,0,0] ,[0,0,0,1] ]

使用
data[feature] = LabelEncoder().fit_transform(data[feature])