如何使用dplyr重命名列,其中新列名和原始列名均为变量

时间:2018-12-12 07:04:31

标签: r dplyr

尽管我已经尝试过,但在这里很难找到这种问题。

library(dplyr)
target = "Species"

rename_data <- function(iris, target = "Species", new_target_name = "Spec3") {

  iris2 <- iris %>% rename(new_target_name = target)
  iris2
}

head(rename_data(iris))

  Sepal.Length Sepal.Width Petal.Length Petal.Width new_target_name
1          5.1         3.5          1.4         0.2          setosa
2          4.9         3.0          1.4         0.2          setosa
3          4.7         3.2          1.3         0.2          setosa

我希望Species重命名为Spec3,而不是new_target_name

我该怎么做?

2 个答案:

答案 0 :(得分:2)

您可以像这样使用/some/path/another_library_newname.dylib

data.table

答案 1 :(得分:1)

所提供的链接为解决方案提供了见识

rename_data <- function(iris, target = "Species", new_target_name = "Spec3") {
  iris2 <- iris %>% rename(!!new_target_name := target)
  iris2
}

head(rename_data(iris))