【发布时间】:2020-10-31 17:10:38
【问题描述】:
训练数据集包含称为商店和其他对象的列。现在对于机器学习模型,我将列转换为标签以用于训练目的。使用下面的代码
from sklearn.ensemble import RandomForestRegressor
X = df_all_4.copy()
y = df_all_4.item_price
X = X.drop(['item_price','date'], axis=1)
for c in df_all_4.columns[df_all_4.dtypes == 'object']:
X[c] = X[c].factorize()[0]
rf = RandomForestRegressor()
rf.fit(X,y)
现在测试数据集也有这些分类列,但我认为缺少一些列,包括与此处不相关的目标列。但是,如果我再次标记训练数据集(无序),标签将与训练时使用的标签不同,因此模型将无法正常工作。如何解决这个问题并在训练和测试时获得相同的编码
【问题讨论】:
-
在 sklearn 中使用 onehotencoder
-
无法标记它们?
标签: python pandas machine-learning scikit-learn