是否有办法用R中的不同集合替换一组单词?



我正在尝试用新单词替换文本中的一些单词。一切看起来都很顺利。然而,有些词就是不会改变。我抬头一看这个问题但是我没有看到类似。这是我的数据

data <- structure(list(Event.Id = c(267583L, 314841L, 237431L, 282255L
), Comments = c("6 mile back up. 16 minute queue. // jim connell notified", 
"backed up past spirit of stl 5.5 miles // backed up to the boone bridge 6 miles // 20-30 min delay", 
"no que", "q: 2 miles")), row.names = c(27L, 44L, 77L, 82L), class = "data.frame")

我尝试了以下代码:

a<- c("^q$", "^que$", "^q:$", "^veh$",  "^mi$", "^backup$","^back up$","^backed up$","^w/$","^rte$")
b<- c(" queue ", " queue ", " queue ", " vehicle ", " mile ", " queue "," queue "," queue ", " with ", " route ")
names(b)<- a
data$Comments1<-str_replace_all(data$Comments,b)

语句是非常棘手的。我有一个非常大的数据,几乎不可能检查每一个文本,看看它是什么样的。因此,我假设了所有场景,并编写了以下代码来选择任何匹配项。

a<- c("^q$", "^que$", "^q:$", "^veh$",  "^mi$", "^backup$","^back up$","^backed up$","^w/$","^rte$",
" q ", " que ", " q: ", " veh ",  " mi ", " backup "," back up "," backed up "," w/ "," rte ",
" q$", " que$", " q:$", " veh$",  " mi$", " backup$"," back up$"," backed up$"," w/$"," rte$",
"^q ", "^que ", "^q: ", "^veh ",  "^mi ", "^backup ","^back up ","^backed up ","^w/ ","^rte ")
b<- c(" queue ", " queue ", " queue ", " vehicle ", " mile ", " queue "," queue "," queue ", " with ", " route ",
" queue ", " queue ", " queue ", " vehicle ", " mile ", " queue "," queue "," queue ", " with ", " route ",
" queue ", " queue ", " queue ", " vehicle ", " mile ", " queue "," queue "," queue ", " with ", " route ",
" queue ", " queue ", " queue ", " vehicle ", " mile ", " queue "," queue "," queue ", " with ", " route ")
names(b)<- a
data$Comments1<-str_replace_all(data$Comments,b)

最新更新