我试图用几个匹配的表达式替换字符串的部分.我已经找到了如何在特定列上应用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中使用相同的语句突然不起作用,声称str_replace_all中有 argument "pattern" is missing.如何修复?

预期输出:

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

推荐答案

不清楚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

R相关问答推荐

在数据表中呈现数学符号

Tidyverse/Djirr为从嵌套列表中提取的列名赋值的解决方案

terra nearest()仅为所有`to_id`列返回NA

在发布到PowerBI Service时,是否可以使用R脚本作为PowerBI的数据源?

根据选中三个复选框中的一个或两个来调整绘图

筛选出以特定顺序患病的个体

bslib::card_header中的shine::downloadButton,图标而不是文本

如何在ggplot2中绘制具有特定 colored颜色 的连续色轮

计算直线上点到参考点的总距离

在gggraph中显示来自不同数据帧的单个值

从数据创建数字的命名列表.R中的框

使用来自嵌套列和非嵌套列的输入的PURRR:MAP和dplyr::Mariate

通过初始的shiny 应用更新部署的shiny 应用的数据和参数,其中部署的应用程序显示为URL

创建在文本字符串中发现两个不同关键字的实例的数据框

使用ifElse语句在ggploy中设置aes y值

抽样变换-REXP与RWEIBUR

替换在以前工作的代码中有x行&q;错误(geom_sf/gganimate/dow_mark)

通过比较来自多个数据框的值和R中的条件来添加新列

从单个html段落中提取键-值对

将字符变量出现次数不相等的字符框整形为pivot_wider,而不删除重复名称或嵌套字符变量