我正在尝试在R中使用xgboost,但是我不确定该模型需要输入什么。我为模型提供的代码是:
xgb <- xgboost(data = data.matrix(training[,-1]),
label = labels,
eta = 0.1,
max_depth = 15,
nround=25,
subsample = 0.5,
colsample_bytree = 0.5,
seed = 1,
eval_metric = "merror",
objective = "binary:logistic",
num_class = 12,
nthread = 3
)
我收到以下错误:
setinfo.xgb.DMatrix(dmat,names(p),p [[1]])中的错误:长度 的标签数必须等于输入数据中的行数
我的标签是我尝试预测的列,但输入数据是所有输入变量。例如,标签的暗度显示为[1] 1837 1,而训练台的暗度显示为[1] 1837 8,所以我认为这些尺寸不必相同吗?标签列设置为true或false,因为我认为这是所需的格式。具有true或false的列是训练数据中的最后一列,因此,为什么使用训练维度[-1]。
有人可以解释一下其余的输入内容吗,因为我已经从一个在线示例中复制了此代码,但我不明白需要什么。