-1
在單個數據集(QueryTM)中,我有兩列Query和TM。我想檢查查詢是否包含TM(在同一行)的值。考慮一個例子,如果TM是「可口可樂」並且查詢是「可口可樂印度」,則查詢應該與TM匹配。但是,如果查詢是「可口可樂印度」,它不應該匹配。結果將被存儲在另一列中,比如結果比較兩列字符串進行行式文本匹配
我使用R作爲平臺。
在單個數據集(QueryTM)中,我有兩列Query和TM。我想檢查查詢是否包含TM(在同一行)的值。考慮一個例子,如果TM是「可口可樂」並且查詢是「可口可樂印度」,則查詢應該與TM匹配。但是,如果查詢是「可口可樂印度」,它不應該匹配。結果將被存儲在另一列中,比如結果比較兩列字符串進行行式文本匹配
我使用R作爲平臺。
您將需要添加單詞邊界來捕獲精確匹配。使用mapply
你可以做,
dd$result <- mapply(grepl, paste0('\\b', dd$TM, '\\b'), dd$Query)
dd
# TM Query result
#1 Coca Cola Coca Colala India FALSE
#2 Fanta Orange Fanta Orange India TRUE
DATA
dput(dd)
structure(list(TM = c("Coca Cola", "Fanta Orange"), Query = c("Coca Colala India",
"Fanta Orange India")), .Names = c("TM", "Query"), row.names = c(NA,
-2L), class = "data.frame")