sklearn.preprocessing.LabelEncoder

sklearn.preprocessing.LabelEncoder():标准化标签,将标签值统一转换成range(标签值个数-1)范围内

以数字标签为例:

[python] view plain copy

In [1]: from sklearn import preprocessing  
   ...: le = preprocessing.LabelEncoder()  
   ...: le.fit([1,2,2,6,3])  
   ...:  
Out[1]: LabelEncoder()  

获取标签值
[python] view plain copy

In [2]: le.classes_  
Out[2]: array([1, 2, 3, 6])  

将标签值标准化

[python] view plain copy

In [3]: le.transform([1,1,3,6,2])  
Out[3]: array([0, 0, 2, 3, 1], dtype=int64)  

将标准化的标签值反转

[python] view plain copy

In [4]: le.inverse_transform([0, 0, 2, 3, 1])  
Out[4]: array([1, 1, 3, 6, 2])  

非数字型标签值标准化:

[python] view plain copy

In [5]: from sklearn import preprocessing  
   ...: le =preprocessing.LabelEncoder()  
   ...: le.fit(["paris", "paris", "tokyo", "amsterdam"])  
   ...: print('标签个数:%s'% le.classes_)  
   ...: print('标签值标准化:%s' % le.transform(["tokyo", "tokyo", "paris"]))  
   ...: print('标准化标签值反转:%s' % le.inverse_transform([2, 2, 1]))  
   ...:  
标签个数:['amsterdam' 'paris' 'tokyo']  
标签值标准化:[2 2 1]  
标准化标签值反转:['tokyo' 'tokyo' 'paris']  
原文地址:https://www.cnblogs.com/DeepRunning/p/9205895.html