关闭。这个问题需要details or clarity .它目前不接受答案。
想改善这个问题吗?通过 editing this post 添加详细信息并澄清问题.
5年前关闭。
Improve this question
这有点难以解释,所以请耐心等待。
我想使用要“查找”的字符串列表和要替换的空字符串 ("") 来执行“查找/替换”。我有一个大型数据表列,我想在其上进行查找/替换。
使用基础 R,我无法弄清楚如何在 gsub 中使用模式列表。
我已经做了一个循环,但是如果有人能帮助我弄清楚如何使用其中一个应用函数(或仅基于 R 的其他东西),那将会更有效率,我将不胜感激。
这有效,但需要很长时间:
for(i in 1:GarbMax){
Table.All$Cleaned<-gsub(garbage[i], "", Table.All$Cleaned, ignore.case = TRUE, fixed = TRUE)
}
我想找到的值列表在“垃圾”中,我正在寻找它们的字段是“Table.All$Cleaned”。 “GarbMax”只是“垃圾”列表的最大值。
顺便说一句(也许),上面的代码给了我一个警告,ignore.case=TRUE 被忽略了。知道为什么吗?
非常感谢你的帮助!
最佳答案
如果我理解正确,以下解决方案将是一种解决方法:
string <- c("onetwo", "two", "three", "fourfive", "five", "six", "sixseven")
find.list <- list("two", "five", "seven")
# in REGEX, | also represents "OR"
find.string <- paste(unlist(find.list), collapse = "|")
gsub(find.string, replacement = "", x = string)
[1] "one" "" "three" "four" "" "six" "six"
关于r - 如何将 gsub 用于 R 中的多个模式列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35366803/