对于不同的feature,每次用都要进行初始化一次,因为特征不同,编码规则肯定也是不同的。
基本上都是按照从小到大来排序的,比如数字,0,2,5,9,编码结果肯定是0,1,2,3
字母的话一般也是如此考虑a,b,c,d啥的,如果你实在不清楚怎么对应的话,我建议你自己提前做成one-hot的形式,自己对应,然后存下这个对应标签。
下面是例子:
>>> xx=[3,2,4,6,9,87,12]
>>> lbe = LabelEncoder()
>>> lbe.fit_transform(xx)
array([1, 0, 2, 3, 4, 6, 5], dtype=int64)
>>> lbe.classes_
array([ 2, 3, 4, 6, 9, 12, 87])
最后一个表示编码的顺序,从0到6对应的什么,下面是字母的编码规则,就是abcd这种顺序
>>> yy=['k','f','m','p','w']
>>> lbe = LabelEncoder()
>>> lbe.fit_transform(yy)
array([1, 0, 2, 3, 4], dtype=int64)
>>> lbe.classes_
array(['f', 'k', 'm', 'p', 'w'], dtype='
提前规定也好,或者记录编码后的lbe.classes_都是可以的
补充:20200608
编码后能给有这些数据类型的array或者list编码吗?
可以的,
lbe.transform
另外有相关问题可以加入QQ群讨论,不设微信群
QQ群:868373192
语音图像视频推荐深度-学习群
最近主要做召回recall部分,欢迎加入交流问题。
For Video Recommendation in Deep learning QQ Group 277356808
For Speech, Image, Video in deep learning QQ Group 868373192
I'm here waiting for you