在收到 Dplyr 中的 rename_at() 已被弃用的软警告后,我试图在 tidyselect 中使用新建议的 vars_rename() 函数。但是,我没有运气让它工作,而且文档很神秘。它告诉我使用 list() 而不是 funs() 然后显示一个示例 ~f(.) 并没有真正帮助。
我需要一次重命名几列。以前,我会这样做:
iris %>% rename_at(vars(starts_with("Sepal.")), funs(paste0(c("foobar.length", "foobar.width"))))
当我尝试建议的 tidyselect 代码时
iris %>% vars_rename(starts_with("Sepal.") = c("foobar.width", "foobar.length"))
我收到一个错误:“iris ...”中的意外'='
如果我尝试以下
iris %>% vars_rename(starts_with("Sepal."), c("foobar.width", "foobar.length"))
我收到一个错误:所有参数都必须命名。
我使用 list() 尝试了多个版本。我不能让它工作。我仍然可以使用旧代码,但我希望这在未来可以重现,因为这对我的公司来说是一项重要的研究。任何帮助表示赞赏。