R:带有自定义变量重要性 permimp 的 Caret rfe

问题描述

我想使用插入符号 axios.get( `http://localhost:3001/posts/${postId}/comments` ).then(res => { setComments(res.data) }) 和替代变量重要性算法 rfe() 运行递归特征消除。 permimp 排列重要性使用 permimpcforest。为了使用 cforest_unbiased()rfe 运行 permimp(),我还需要自定义哪些其他插入符函数?

这是我目前的代码:

cforest

我收到错误 library(caret) permimpRFE <- list(summary = defaultSummary,fit = function(x,y,first,last,...){ library(party) tmp <- as.data.frame(x,stringsAsFactors = TRUE) tmp$y <- y party::cforest(y ~ .,data = tmp,control = party::cforest_unbiased(ntree = 50)) },pred = function(object,x) predict(object,x),rank = function(object,x,y) { library(permimp) vimp <- permimp::permimp(object,conditional = TRUE,threshold = .95,do_check = FALSE) vimp <- as.data.frame(vimp$values) colnames(vimp) <- "Overall" vimp <- vimp[order(vimp$Overall,decreasing = TRUE),drop = FALSE] if (ncol(x) == 1) { vimp$var <- colnames(x) } else vimp$var <- rownames(vimp) vimp },selectSize = pickSizeBest,selectVar = pickVars) # specify rfeControl contr <- caret::rfeControl(functions=permimpRFE,method="repeatedcv",number=3,repeats=2,saveDetails = TRUE) dat <- as.data.frame(ChickWeight)[1:50,] preds <- dat[,2:4] response <- dat[,1] # recursive feature elimination caret (Algorithm 2) set.seed(43,kind = "Mersenne-Twister",normal.kind = "Inversion") results <- caret::rfe(x = preds,y = response,sizes=c(1:3),metric= "RMSE",rfeControl=contr)

如何让 Error in { : task 1 failed - "invalid 'x' type in 'x && y'"rfepermimp 一起运行?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)