1. LabelEncoder
简单来说 LabelEncoder 是对不连续的数字或者文本进行编号
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
le.fit([1,5,67,100])
le.transform([1,1,100,67,5])
输出: array([0,0,3,2,1])
2. OneHotEncoder
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] ]
正如keras中的keras.utils.to_categorical(y_train, num_classes)
3. Normalizer
from sklearn.preprocessing import Normalizer
nor = Normalizer(norm='l2')
nor.transform([[1,2,3,4],
[5,4,3,2],
[1,3,5,2],
[2,4,1,5]])
这里nor.fit是保留了api,但是这个函数没有用。会把每一行都转化成一个单位向量。