2016-03-22 19 views
1

VISHWANATHAN KRISHNA GURUVAYURおよびGURUVAYUR KRISHNA VISHWANATHANと似たRの名前と一致させようとしています。スペースを削除した後levenshtein21%に一致します。 私は似たように、これらの2人の名前をタグ付けすることができ、いくつかの文字列照合アルゴリズムがあるかどうかを知りたい...Rの文字が突発した名前の文字列一致

library(RecordLinkage) 
levenshteinSim("GURUVAYURKRISHNAVISHWANATHAN","VISHWANATHANKRISHNAGURUVAYUR") 

#[1] 0.2142857 
+0

連結する前に3つの単語を同じ順序で並べますか? – cory

+0

テーブルには何百万ものレコードがあり、単語の順序は定義されていません。それは代わりに 'GURUVAYUR VISHWANATHAN KRISHNA'または' KRISHNA GURUVAYUR VISHWANATHAN' .. – Oshan

+1

なぜあなたは "abcdef"と "efabcd"の間のlevenshtein距離を1にしますか? – cory

答えて

0

もRecordLinkageパッケージから、JARO-ウィンクラーアルゴリズムを試してみてください。たとえば、hereを参照し、詳細についてはhereを参照してください。あなたのケースでは

jarowinkler("GURUVAYURKRISHNAVISHWANATHAN","VISHWANATHANKRISHNAGURUVAYUR") 

利回り:

0.7063492

結果は0と1の間で常にあるので、これは改善されています。