# *****************对label进行编码******************************** from sklearn import preprocessing
# 构建编码器 encoder=preprocessing.LabelEncoder() # 先定义一个编码器对象
raw_labels=['翠花','张三','王宝强','芙蓉姐姐','凤姐','王宝强','凤姐']
encoder.fit(raw_labels) # 返回自己的一个实例
print('编码器列表:{}'.format(encoder.classes_)) # 返回编码器中所有类别,已经排除了重复项
# 使用编码器来编码新样本数据 need_encode_labels=['芙蓉姐姐','翠花']
encoded_labels=encoder.transform(need_encode_labels)
print('编码之前:{}'.format(need_encode_labels))
print('编码之后:{}'.format(encoded_labels))
# 使用编码器将编码数字解码成原来的文本标记,注意最大值不能超过编码器中的长度
encoded=[1,3,0,4]
decoded_labels=encoder.inverse_transform(encoded)
print('解码后:{}'.format(decoded_labels))
-------------------------------------输---------出-------------------------------
编码器列表:['凤姐' '张三' '王宝强' '翠花' '芙蓉姐姐']
编码之前:['芙蓉姐姐', '翠花']
编码之后:[4 3]
解码后:['张 三' '翠花' '凤姐' '芙蓉姐姐']
--------------------------------------------完------------------------------------