【发布时间】:2019-05-12 01:50:10
【问题描述】:
我正在尝试获取标签编码器的映射,以确定哪个代码为我的 df 中的一列获取了每个字符串。
这里是编码:
y[:]=LabelEncoder().fit_transform(y[:])
我想得到这样的输出:
A:1
B:2
C:3
感谢您的帮助!
【问题讨论】:
标签: python python-3.x scikit-learn
我正在尝试获取标签编码器的映射,以确定哪个代码为我的 df 中的一列获取了每个字符串。
这里是编码:
y[:]=LabelEncoder().fit_transform(y[:])
我想得到这样的输出:
A:1
B:2
C:3
感谢您的帮助!
【问题讨论】:
标签: python python-3.x scikit-learn
如果您希望以后能够使用映射或逆变换,则应避免进行内联初始化。
data = ['A', 'A', 'B', 'C', 'B', 'B'] # `y`
le = LabelEncoder()
mapped = le.fit_transform(data)
mapping = dict(zip(le.classes_, range(1, len(le.classes_)+1)))
print(mapping)
# {'A': 1, 'B': 2, 'C': 3}
更好的是,如果您想反转编码,请使用inverse_transform:
print(le.inverse_transform(mapped))
# ['A' 'A' 'B' 'C' 'B' 'B']
【讨论】: