错误:缺少某些必需的组件:问题?

问题描述 投票:0回答:1

我遵循此指南创建自己的插入符号模型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高兴之外。

r r-caret
1个回答
1
投票

通过输入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))

尝试一下。

© www.soinside.com 2019 - 2024. All rights reserved.