私は2つの単語のベクトルを持っています。Rとの文字列一致:可能な限り一致する文字列を見つける
Corpus<- c('animalada', 'fe', 'fernandez', 'ladrillo')
Lexicon<- c('animal', 'animalada', 'fe', 'fernandez', 'ladr', 'ladrillo')
私は、レキシコンとコーパスの間で最良のマッチングを行う必要があります。 私は多くの方法を試しました。これはその一つです。
library(stringr)
match<- paste(Lexicon,collapse= '|^') # I use the stemming method (snowball), so the words in Lexicon are root of words
test<- str_extrac_all (Corpus,match,simplify= T)
test
[,1]
[1,] "animal"
[2,] "fe"
[3,] "fe"
[4,] "ladr"
しかし、試合は次のようになります。
[1,] "animalada"
[2,] "fe"
[3,] "fernandez"
[1,] "ladrillo"
代わりに、試合はアルファベット順に私の辞書に注文した最初の単語です。ところで、これらのベクトルは、私が持っているより大きなリストのサンプルです。
私はregex()を試していませんでした。私はそれがどのように動作するか分かりません。おそらく解決策はそのように進むでしょう。
この問題の解決にお役立てください。ご協力ありがとうございました。
私は実際のレキシコンであなたの答えをテストしています。私は結果を後でお知らせします。あなたがた両方に感謝します – pch919