“没有一个[索引在[列]中”在预测函数中的xgboost

问题描述

我已经训练了一个 XGBoostClassifier 模型。当我必须使用这个训练有素的模型来预测新输入时,predict() 函数会抛出“[索引不在 [列] 中”错误

以前,我有

错误功能名称不匹配:

我可以通过使用删除

cols_when_model_builds = model.get_booster().feature_names

但是之后

to_deploy = to_deploy[cols_when_model_builds]

我现在明白了

"[Index (['f0','f1' ... dtype='object')] 都不在 [列]"

输入用于训练模型的数据框有 42 列,为了验证,我有 62 列的数据框,所以我知道只能使用相同的 42 列。并且,当比较新旧时,有同名的列。

但是错误

"[Index (['f0','f1' ... dtype='object')] 都不在 [列]"

似乎将所有列返回为不存在

" [Index(['f0','f1','f2','f3','f4','f5','f6','f7','f8','f9','f10',\n 'f11','f12','f13','f14','f15','f16','f17','f18','f19','f20',\n 'f21','f22','f23','f24','f25','f26','f27','f28','f29','f30',\n 'f31','f32','f33','f34','f35','f36','f37','f38','f39','f40',\n 'f41','f42'],\n
dtype='object')] 在 [columns]"

有人可以帮助如何进行吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)