用字符重命名所有列

时间:2019-11-04 07:25:15

标签: r dataframe

我需要重命名data.frame中的所有列。现在,它们的编号为1-150(不带X),但我想在每个数字前添加“ id”。

现在:

    c = data.frame(1, 2)
    names(c)[1] <- "1"
    names(c)[2] <- "2"

我想要的是:因此,每个列名分别为id1id2

我该怎么做?

1 个答案:

答案 0 :(得分:2)

您可以使用dplyr::rename_all()

library(dplyr)
iris %>% 
  rename_all(~ paste0("id_", .x)) %>% 
  names()

或以R为底基

setNames(
  iris, 
  nm = paste0(
    "id_", names(iris)
  )
) %>% names()