string1のすべての単語がstring1に存在するかどうかを確認したい。例string2のすべての単語がstring1に存在するかどうかをチェックするR
string1 <- "My name is John Smith"
string2 <- "My Smith"
私はコードがTRUE
str_detect(string1, string2)
を返す必要がありますが、それはすべてがTRUE
であれば、それは無いそうでない存在だ偽
string1のすべての単語がstring1に存在するかどうかを確認したい。例string2のすべての単語がstring1に存在するかどうかをチェックするR
string1 <- "My name is John Smith"
string2 <- "My Smith"
私はコードがTRUE
str_detect(string1, string2)
を返す必要がありますが、それはすべてがTRUE
であれば、それは無いそうでない存在だ偽
を返して次のよう期待しています。
> string1 <- "My name is John Smith"
> string2 <- "My Smith"
>
> strsplit(string2,' ')[[1]] %in% strsplit(string1,' ')[[1]]
[1] TRUE TRUE
>
テストケース:
> string3 <- 'He is Smith'
> strsplit(string3,' ')[[1]] %in% strsplit(string1,' ')[[1]]
[1] FALSE TRUE TRUE
あなたがこれを行うことができます。 string2
のすべての要素がstring1
にある場合は、TRUE
です。
all(sapply(unlist(strsplit(string2, " ")), grepl, string1))
[1] TRUE
str_detect
stringr
から使用:
string1 <- "My name is John Smith"
string2 <- "My Smith"
library(stringr)
library(dplyr)
string1 %>%
str_detect(str_split(string2, " ", simplify = TRUE)) %>%
all()
# [1] TRUE
代わりunlist()
INGの、あなたはstr_split
simplify = TRUE
を使用することができます