【问题标题】:Replace characters by matching string using several options使用多个选项通过匹配字符串替换字符
【发布时间】:2022-07-04 23:27:32
【问题描述】:

我试图用几个匹配的表达式替换字符串的部分。我找到了如何在特定列上应用str_replace_all。但我不知道如何在带有dplyr 管道的数据框中应用它?

虚拟示例:

d <- data.frame(nam = c('aaa_string', 'bb_salala', 'cc_bububub'))

# applied on the d$nam vector every thing is working
d$nam %>% 
     str_replace_all(c("aaa" = "1", "bb" = "2", "cc" = "33"))

mutate 中使用相同的语句突然不起作用,声称 argument "pattern" is missingstr_replace_all 中。如何解决?

预期输出:

nam
"1_string"   
"2_salala"   
"33_bububub"

【问题讨论】:

    标签: r string replace


    【解决方案1】:

    不清楚mutate 语句的使用方式。以下效果很好。另外,如果mutateplyr::mutate屏蔽了,指定dplyr::mutate

    library(dplyr)
    library(stringr)
    d <- d %>%
       dplyr::mutate(nam = str_replace_all(nam, 
      c("aaa" = "1", "bb" = "2", "cc" = "33")))
    

    -输出

         nam
    1   1_string
    2   2_salala
    3 33_bububub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-10
      • 1970-01-01
      • 2014-03-12
      • 2013-02-14
      • 1970-01-01
      • 2015-08-17
      • 1970-01-01
      相关资源
      最近更新 更多