重命名R中data.frame中的因子级别

时间:2017-05-07 03:59:19

标签: r

我有这个data.frame

df <- data.frame(x = c("gravel", "sandstone", "siltstone"))

我想通过添加&#34; R1_&#34;来重命名变量x的级别。在级别名称之前。我可以按照this answer执行此操作。

df %>%  dplyr::mutate(x = fct_recode(x, 
                                     "R1_gravel" = "gravel", 
                                     "R1_sandstone" = "sandstone",
                                     "R1_siltstone" = "siltstone" 
                                     ))

             x
1    R1_gravel
2 R1_sandstone
3 R1_siltstone

但是,在我的实际data.frame中,变量x有很多级别。因此,现在是时候重新命名所有级别,如上所述。我想知道是否有更快的方法  通过在开始时添加R1_来重命名所有级别。

1 个答案:

答案 0 :(得分:2)

这样做

levels(df$x) <- paste0("R1_",levels(df$x))
# df
# x
# 1    R1_gravel
# 2 R1_sandstone
# 3 R1_siltstone