R:如何使用 gamboost 进行预测
R: how to make predictions using gamboost
library(mboost)
### a simple two-dimensional example: cars data
cars.gb <- gamboost(dist ~ speed, data = cars, dfbase = 4,
control = boost_control(mstop = 50))
set.seed(1)
cars_new <- cars + rnorm(nrow(cars))
> predict(cars.gb, newdata = cars_new$speed)
Error in check_newdata(newdata, blg, mf) :
‘newdata’ must contain all predictor variables, which were used to specify the model.
我使用 help(gamboost)
页面上的示例拟合模型。我想用这个模型来预测一个新的数据集,cars_new
,但是遇到了上面的错误。我该如何解决这个问题?
predict
函数寻找一个名为 speed
的变量,但是当你用 $
符号对它进行子集化时,它就没有名字了。
因此,这种预测变体有效;
predict(cars.gb, newdata = data.frame(speed = cars_new$speed))
或保留原名;
predict(cars.gb, newdata = cars_new['speed'])
library(mboost)
### a simple two-dimensional example: cars data
cars.gb <- gamboost(dist ~ speed, data = cars, dfbase = 4,
control = boost_control(mstop = 50))
set.seed(1)
cars_new <- cars + rnorm(nrow(cars))
> predict(cars.gb, newdata = cars_new$speed)
Error in check_newdata(newdata, blg, mf) :
‘newdata’ must contain all predictor variables, which were used to specify the model.
我使用 help(gamboost)
页面上的示例拟合模型。我想用这个模型来预测一个新的数据集,cars_new
,但是遇到了上面的错误。我该如何解决这个问题?
predict
函数寻找一个名为 speed
的变量,但是当你用 $
符号对它进行子集化时,它就没有名字了。
因此,这种预测变体有效;
predict(cars.gb, newdata = data.frame(speed = cars_new$speed))
或保留原名;
predict(cars.gb, newdata = cars_new['speed'])