如何在预测数据上使用Pandas get_dummies?

时间:2018-05-31 18:14:45

标签: one-hot-encoding

在3个分类列上使用Pandas get_dummies获得一个热编码的Dataframe后,我已经训练(取得了一些成功)Perceptron模型。

现在我想预测一个新观察结果,它不是热编码的。

有没有办法记录get_dummies列映射以重复使用它?

1 个答案:

答案 0 :(得分:2)

据我所知,目前没有自动程序。将来版本sklearn CategoricalEncoder对于这项工作非常方便。如果你克隆sklearn github master分支并自己构建,你就可以亲自动手了。目前我想到了两个选择:

  • 使用LabelEncoder+OneHotEncoder组合,请参阅this answer, for example;
  • 只需在训练OHE输出后检索(并存储,如果需要)列列表。然后在测试集/示例上运行pd.get_dummies。循环输出测试OHE列,删除那些未出现在训练OHE中的列,并添加测试OHE中缺少的那些填充零的列。