我试图替换一个包含+
的字符串,但是我使用的函数无法完成这个任务。
testdata <- data.frame(id = c(1,2,3),
v1 = c("A+B", "C","D"),
v2 = c("N","M","A+B"),
v3 = c("D","E","T"))
> testdata
id v1 v2 v3
1 1 A+B N D
2 2 C M E
3 3 D A+B T
下面的函数没有任何作用。
testdata %>%
mutate_all(funs(str_replace(., "A+B", "")))
我想删除 Dataframe 中的任何位置的A+B
。
如何才能到达下面所需的数据集
> testdata
id v1 v2 v3
1 1 NA N D
2 2 C M E
3 3 D NA T
5条答案
按热度按时间mhd8tkvw1#
如果要替换固定字符串
"A+B"
,请使用na_if
或者如果我们要检查
+
符号vlju58qv2#
你需要用
\\
来逃避+
创建于2022年12月20日,使用reprex v2.0.2
cclgggtu3#
用于删除包含
+
的字符串的基本R选项为:结果:
rqdpfwrv4#
我认为问题是
+
被解释为正则表达式,所以你需要添加两个\\
来转义那个字符。然后,你可以使用str_replace
。哦,mutate_all
已经被mutate(across(...))
取代了。wnavrhmk5#
搜索和替换给定短语的简单方法。