r - xgboost 在 R 中设置
问题描述
我正在尝试在 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 所以我认为这些不必是相同的大小?标签列设置为真或假,因为我认为这是所需的格式。具有真或假的列是训练数据中的最后一列,因此我使用训练维度,[-1]。
有人可以解释一下其余的输入是什么,因为我从网上的一个例子中复制了这段代码,我不明白需要什么。
解决方案
推荐阅读
- python - 创建与其自身部分的列表的最有效方法是什么?
- c# - 我的 asp.net 下拉列表正在包装记录
- mysql - 在 Windows 10 上重新安装 MySQL Community Servers 8.0 时出错
- python - 将重复项添加到集合或检查元素是否存在然后添加
- python - 在数据框中按位置扩展列
- node.js - 使用 FS 读取文件时出现结束错误后写入
- java - 地图的单个作者和多个阅读者
- c# - 为什么日期时间字符串在一个 Windows 10 系统上填充为 0,而在大多数其他系统上却没有?
- python - 使用 pybind11 在 C++ 中传递和返回 numpy 数组
- javascript - 您如何获得分支的条件语句?