首先,我用字典的键定义了标签编码器的类。然后我使用该标签编码器对一些字符串进行编码。但是对于同一个字符串,它给出不同的整数。为什么会这样?
grid_dict = {'8861892541fffff': 588,'886189254dfffff': 65, '8861892543fffff': 103, '8861892547fffff': 83, '8861892545fffff': 401,
'8861892569fffff': 131, '8861892727fffff': 39, '886189255dfffff': 13, '8861893597fffff': 2, '8861892555fffff': 4, '886189209bfffff': 13, '8861892549fffff': 3}
le = LabelEncoder()
le.classes_ = list(grid_dict.keys())
现在
le.transform(['8861892547fffff']) #4th class
给了我array([1])
,但le.transform(['8861892545fffff']) #5th class
也给了我array([1])不应该发生的事情。同样,当我做le.inverse_transform(0)它的给予时'8861892541fffff',这是第二类。还有当我做le.transform(['8861892549fffff']) #last class它的给予array([5])和为le.transform(['8861892569fffff']) #class6它的给予array([5])。
我没有在任何地方安装标签编码器。我将一些键存储在字典中,并使用 dict 键声明标签编码器类。为什么会这样?