ベクトル内の文字列要素の部分文字列を空白に置き換えようとしています。以下は、検討中のベクトルです。
test <- c("PALMA DE MALLORCA", "THE RICH AND THE POOR", "A CAMEL IN THE DESERT", "SANTANDER SL", "LA")
lista <- c("EL", "LA", "ES", "DE", "Y", "DEL", "LOS", "S.L.", "S.A.", "S.C.", "LAS",
"DEL", "THE", "OF", "AND", "BY", "S", "L", "A", "C", "SA", "SC", "SL")
次に、mgsub
関数をそのまま適用すると、次の出力が得られます。
library(qdap)
mgsub(lista, "", test)
# [1] "PM MOR" "RIH POOR" "M IN ERT" "NTER" ""
したがって、リストを次のように変更して再実行します。
lista <- paste("\\b", lista, "\\b", sep = "")
mgsub(lista, "", test)
# [1] "PALMA DE MALLORCA" "THE RICH AND THE POOR" "A CAMEL IN THE DESERT"
# [4] "SANTANDER SL" "LA"
この関数で単語境界正規表現を機能させることができません。