在R中构建函数时发出警告

时间:2017-09-09 07:48:45

标签: r function warnings

由于我使用了许多不同算法的交叉验证,我决定自己构建以下函数:

crossFun <- function(myseed, vars, labels, par, tim, algo, len) {
  set.seed(myseed)
  multiFolds <- createMultiFolds(labels, k = par, times = tim)
  cv_ctrl <- trainControl(method ='repeatedcv', number = par, repeats = tim, index = multiFolds)

  cl <- makeCluster(3, type = 'SOCK')
  registerDoSNOW(cl)

   result <- train(x = vars, y = labels, method = algo, tuneLength = len, trControl = cv_ctrl)

  stopCluster(cl)

  return(result)
}

该功能确实有效,但结果是,我收到以下警告:

  

警告消息:不建议在tibble上设置行名称。

我找不到任何明确的解释。我尝试用不同的方式编写函数,但似乎没有任何东西可以消除这个消息。

任何想法意味着什么?

1 个答案:

答案 0 :(得分:0)

tidyverse方式鼓励不使用rownames。 您始终可以使用as.data.frame()强制回到基础数据框。 鼓励的方法是使用tibble::rownames_to_column()使rownames成为一个新变量。

请参阅this issue