【问题标题】:XGBoost error: feature names are differentXGBoost 错误:功能名称不同
【发布时间】:2020-10-09 01:56:17
【问题描述】:

XGBoost 给出这个错误:

Error in predict.xgb.Booster(m, newdata = data.matrix(.newdata), ...) : 
Feature names stored in `object` and `newdata` are different!

但是,我运行的所有这些检查都没有显示任何问题:

dim(df1)[2] == dim(df2)[2]
names(df1) == names(df2)
names(df1) %in% names(df2)
names(df1) %in% names(df2)

df1Types = sapply(df1, class)
df2Types = sapply(df2, class)
df1Types == df2Types

想法?

【问题讨论】:

  • 请给出可重现的例子。

标签: r xgboost


【解决方案1】:

两个数据框中的因子水平必须相同。此外,因子的顺序也必须相同。

-如果您在数据加载函数中按频率对因子的顺序进行排序,这可能会成为一个问题,因为使用相同函数加载的两个数据帧可能具有不同顺序的因子。根据数据本身的不同,数据也可能具有不同的因素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-07
    • 1970-01-01
    • 2019-12-07
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多