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

How to use Pandas get_dummies on predict data?

在 3 个分类列上使用 Pandas get_dummies 获得一个热编码数据帧后,我训练了(取得了一些成功)感知器模型。

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

有什么方法可以记录 get_dummies 列映射以重新使用它吗?

据我所知,目前没有自动程序可以执行此操作。以后发布sklearn CategoricalEncoder 对这个工作会非常得心应手。如果你克隆 sklearn github master 分支并自己构建,你已经可以动手了。目前我想到了 2 个选项:

  • 使用LabelEncoder+OneHotEncoder组合,见;
  • 在训练 OHE 输出后简单地检索(并存储,如果需要)列列表。然后运行pd.get_dummies就考set/example。遍历输出测试 OHE 列,删除那些未出现在训练 OHE 中的列,并添加那些在测试 OHE 中缺失的列并用零填充。