我一直在努力定制rfFuncs。我想在自定义的rfFuncs函数中引入一个重采样选项。在Rstudio论坛中有一个与此相关的主题。但是提供的代码不起作用:
https://community.rstudio.com/t/caret-recursive-feature-elimination-with-upsamling/6903
我更改了rfFuncs $ fit,该功能在rfe之外可以使用:
rf_fit <- function(x, y, first, last, ...){
loadNamespace("randomForest")
df_up <- caret::upSample(x, y)
randomForest::randomForest(
df_up[ , names(df_up) != "Class"],
df_up$Class,
importance = TRUE,
...)
}
但是在rfe公式中插入时出现以下错误消息:
{的错误:任务1失败-“参数长度为零”
我会怀疑,这是因为我没有新公式的环境。但是我不知道如何创建环境并将其关联到公式...
这是完成稿件的最后一个基本步骤,我真的希望它能起作用...