我遵循此指南创建自己的插入符号模型Creating Your Own Model。那里说
如果使用回归模型或分类模型不创建类概率,可以在此处使用NULL值而不是功能
所以我这样做
# Define the model cFBasic
cFBasic <- list(type = "Regression",
library = c("lubridate", "stringr"),
loop = NULL)
...
cFBasic$prob <- NULL
cFBasic$sort <- NULL
但是,当我尝试测试模型时,会产生以下错误:
control <- trainControl(method = "cv",
number = 10,
p = .9,
allowParallel = TRUE)
fit <- train(x = calib_set,
y = calib_set$y,
method = cFBasic,
trControl = control)
Error: some required components are missing: prob
我该如何解决?除了添加函数prob来生成伪造的pro
数据帧以使caret
高兴之外。
通过输入cFBasic$prob <- NULL
,您实际上并没有在列表中添加新项目。
看看这个:
cFBasic <- list(prob = NULL)
cFBasic
#> $prob
#> NULL
cFBasic$prob <- NULL
cFBasic
#> named list()
当为列表的对象分配NULL时,将删除该对象。如果要向列表添加一个名为prob
的NULL对象和一个名为sort
的NULL对象,则应使用以下方式键入:
# Define the model cFBasic
cFBasic <- list(type = "Regression",
library = c("lubridate", "stringr"),
loop = NULL)
...
cFBasic <- c(cFBasic, list(prob = NULL))
cFBasic <- c(cFBasic, list(sort = NULL))
尝试一下。