【问题标题】:How to append a string to subset of variable names in R?如何将字符串附加到R中的变量名子集?
【发布时间】:2013-02-09 09:01:57
【问题描述】:

我正在尝试更改数据框中的一些变量名称。在不输入每个旧名称和每个新名称的情况下如何做到这一点?我认为下面的代码可能有效,但它没有。我正在尝试将“Econ”附加到数据框中标识的每个现有名称。

    names(wb.misc)[3,13,14,20,22,47,61,62,64,68,73] <- 
         paste("Econ", names(wb.misc)[3,13,14,20,22,47,61,62,64,68,73], sep = "-")

【问题讨论】:

  • 你能说得更具体点吗?你得到什么错误?
  • 欢迎来到 SO :) you might like #005

标签: r rename


【解决方案1】:

您需要在索引周围加上c()

 names(wb.misc)[c(3,13,14,20,22,47,61,62,64,68,73)] = paste("Econ", names(wb.misc)[c(3,13,14,20,22,47,61,62,64,68,73)], sep = "-")

【讨论】:

    【解决方案2】:

    有效获取变量名称的一种方法是使用dput(names(df)),其中df 是您的data.frame。

    例如,使用内置数据集airquality,您可以执行以下操作

    dput(names(airquality))
    

    这给了你:

    c("Ozone", "Solar.R", "Wind", "Temp", "Month", "Day")
    

    然后,您可以进行编辑以提取所需的列,而无需从头开始键入它们。例如,假设您要重命名以下三个变量,您可以在gdata 中使用rename.vars

    vars <- c("Ozone",  "Wind", "Temp")
    library(gdata)
    rename.vars(airquality, from=vars, to=paste0("Econ", vars))
    

    使用实际的变量名通常也会使您的代码更可靠。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-23
      • 2016-07-14
      • 1970-01-01
      • 2019-11-23
      • 1970-01-01
      • 2022-01-26
      • 2020-03-06
      • 1970-01-01
      相关资源
      最近更新 更多