我的数据框中有列
city
London
Paris
New York
.
.我是对列进行编码的标签,它将0分配给伦敦,1分配给巴黎,2分配给纽约。但是,当我为模型中的预测传递单个值时,我给出了城市名称New York,并将其赋值为0。如何保持不变,我希望如果纽约的值在训练阶段通过标签编码器分配2,那么它应该在预测时再次分配2。
Code
from sklearn.preprocessing import LabelEncoder
labelencoder=LabelEncoder()
df['city']=labelencoder.fit_transform(df['city'])发布于 2021-05-09 17:43:06
您需要使用fit或fit_transform来拟合编码器,然后对要编码的数据执行transform以获得标签(如果对该数据执行fit_transform,它将重新拟合编码器,如果只传递一个值,它将被编码为0):
df['label'] = labelencoder.fit_transform(df['city'])
# df
# city label
# 0 London 0
# 1 Paris 2
# 2 New York 1labelencoder.transform(['New York'])
# array([1])https://stackoverflow.com/questions/67456145
复制相似问题