输入数据包含 'inf' 或 'nan' 的 R xgboost 错误,但它以前工作过
R xgboost error with input data containing 'inf' or 'nan' but it has worked before
我正在使用 xgboost 版本 1.4.1.1 的 R 库执行二进制分类任务,我已经定期交付近 2 年了。
我最近升级了我公司的笔记本电脑,需要安装 R 和我正在使用的库。
我现在正在尝试 运行 这个任务,它给我以下错误:
Error in xgb.DMatrix(data, label = label, missing = missing) :
[14:28:40] amalgamation/../src/data/data.cc:945: Check failed: valid: Input data contains `inf` or `nan`
数据管道没变,数据结构和之前完全一样。我将数据转换为数据矩阵,如下所示:
xgbmodel <- xgboost(data = data.matrix(mydata),
label = res,
eta = 0.2,
max_depth = 10,
gamma = 0.4,
lambda = 0.5,
nround = 40,
subsample = 0.7,
colsample_bytree = 0.75,
seed = 21,
eval_metric = "logloss",
objective = "binary:logistic"
)
#
然后我遇到了以前从未遇到过的错误。
R 版本:4.1.0
xgboost: 1.4.1.1
关于如何解决这个问题有什么想法吗?
编辑: 我卸载了 xgboost 1.4.1.1 并安装了 1.1.1.1 版本。它的工作。好像是版本的问题,不是数据的问题。我想使用最新版本,这就是为什么知道是否有其他人有类似问题以及如何解决它会很好。
我遇到了同样的错误。
我想以前版本的 xgboost wad 会处理缺失值,但现在不再是这种情况了。
我们要么放弃 NA,要么我们使用均值或中位数来估算它们(就像 xgboost 在更新版本之前所做的那样),例如使用 KNN 估算。
不确定这是否是您要找的答案。
我正在使用 xgboost 版本 1.4.1.1 的 R 库执行二进制分类任务,我已经定期交付近 2 年了。
我最近升级了我公司的笔记本电脑,需要安装 R 和我正在使用的库。
我现在正在尝试 运行 这个任务,它给我以下错误:
Error in xgb.DMatrix(data, label = label, missing = missing) :
[14:28:40] amalgamation/../src/data/data.cc:945: Check failed: valid: Input data contains `inf` or `nan`
数据管道没变,数据结构和之前完全一样。我将数据转换为数据矩阵,如下所示:
xgbmodel <- xgboost(data = data.matrix(mydata),
label = res,
eta = 0.2,
max_depth = 10,
gamma = 0.4,
lambda = 0.5,
nround = 40,
subsample = 0.7,
colsample_bytree = 0.75,
seed = 21,
eval_metric = "logloss",
objective = "binary:logistic"
)
#
然后我遇到了以前从未遇到过的错误。
R 版本:4.1.0
xgboost: 1.4.1.1
关于如何解决这个问题有什么想法吗?
编辑: 我卸载了 xgboost 1.4.1.1 并安装了 1.1.1.1 版本。它的工作。好像是版本的问题,不是数据的问题。我想使用最新版本,这就是为什么知道是否有其他人有类似问题以及如何解决它会很好。
我遇到了同样的错误。 我想以前版本的 xgboost wad 会处理缺失值,但现在不再是这种情况了。 我们要么放弃 NA,要么我们使用均值或中位数来估算它们(就像 xgboost 在更新版本之前所做的那样),例如使用 KNN 估算。 不确定这是否是您要找的答案。