R caretEnsemble在不同特征子集上的构建模型

R caretEnsemble在不同特征子集上的构建模型,r,r-caret,R,R Caret,我想知道是否有某种方法可以结合预测两个不同的模型是建立在两个不同的输入功能集。例如,第一个在功能1:10上,第二个在11:20上,并与caretStack函数的CareTensemble组合 我正在努力: data("mtcars") head(mtcars) library(caret) library(caretEnsemble) library(glmnet) library(gbm) ma_control <- trainControl(method =

我想知道是否有某种方法可以结合预测两个不同的模型是建立在两个不同的输入功能集。例如,第一个在功能1:10上,第二个在11:20上,并与caretStack函数的CareTensemble组合

我正在努力:

 data("mtcars")

head(mtcars)

library(caret)
library(caretEnsemble)
library(glmnet)
library(gbm)

ma_control <- trainControl(method          = "cv",
                           number          = 2,
                           summaryFunction = RMSE,
                           verboseIter     = TRUE,
                           savePredictions = TRUE)

subset1                 <- mtcars[,c(2:3,1)]
subset2                 <- mtcars[,c(4:5,1)]

classification_formula1 <- as.formula(paste("mpg" ,"~",
                                            paste(names(subset1)[!names(subset1)=='mpg'],collapse="+")))
classification_formula2 <- as.formula(paste("mpg" ,"~",
                                            paste(names(subset2)[!names(subset2)=='mpg'],collapse="+")))

emf_tuneGrid_list <- NULL;
emf_tuneGrid_list$glmnet1_tuneGrid <- expand.grid(alpha = 1.0 ,lambda = 1)
emf_tuneGrid_list$gbm2_tuneGrid    <- expand.grid(interaction.depth = 1, n.trees = 101 ,
                                                    shrinkage = 0.5 , n.minobsinnode = 5)

emf_model_list <- caretList (
  trControl=ma_control, metric = "RMSE",
  tuneList=list(
    glmnet1= caretModelSpec(method='glmnet',  classification_formula = classification_formula1 , data = subset1 , tuneGrid=emf_tuneGrid_list$glmnet1_tuneGrid),
    gbm2   = caretModelSpec(method='gbm',     classification_formula = classification_formula2,  data = subset2 , tuneGrid=emf_tuneGrid_list$gbm2_tuneGrid , verbose = FALSE)
  )
)
数据(“mtcars”)
车头(mtcars)
图书馆(插入符号)
图书馆(caretEnsemble)
图书馆(glmnet)
图书馆(gbm)

妈,控制A就好了。目前,我无法运行您的代码。我添加了可复制的示例,试图为每个模型传递不同的分类公式。看来这是不可能的。我想确定我不认为这是可能的。