我的最终目标,使用下面的矩阵中的数据,使用glmnet方法在不同的lambda和alphas的网格上训练许多模型 . 也许还有另一种方法可以解决这个调优问题 .
x <- Macro[1:13,3:21]
x <- as.matrix(x)
y <- Macro[1:13,2:2]
y <- as.matrix(y)
myfit <- caret::train(x,y,
method = "glmnet",
tuneGrid = expand.grid(.alpha = seq(.05, 1, length = 15),
.lambda = c((5:10)/10)))
上面的代码返回以下错误:train.default中的错误(x,y,method =“glmnet”,tuneGrid = expand.grid(.alpha = seq(0.05,:Metric RMSE不适用于分类模型)
1 回答
问题是您的响应变量
y
是一个矩阵,但根据train
的文档,它应该是"A numeric or factor vector containing the outcome for each sample"
. 因此,您只需从代码中删除y <- as.matrix(y)
即可 .