文字列距離の手法

Rで学ぶ中級正規表現

Angelo Zehr

Data Journalist

Damerau–Levenshtein

リック・キャプランのタイプミス

Rで学ぶ中級正規表現

手法の略称

通常のLevenshtein距離:

stringdist(a, b, method = "lv")

Damerau–Levenshtein距離:

stringdist(a, b, method = "dl")

最適文字列整列距離:

stringdist(a, b, method = "osa")
Rで学ぶ中級正規表現

Q-gram(n-gram)

ホノルルのq-gram

Rで学ぶ中級正規表現

Q-gram(n-gram)

HonoluluとHanoluluのq-gram

Rで学ぶ中級正規表現

q-gramの確認

qgrams("Honolulu", "Hanolulu", q = 2)

返り値:

   Ho on ul no ol lu la
V1  1  1  1  1  1  2  0
V2  1  1  1  1  1  1  1
Rで学ぶ中級正規表現

手法の略称

共有しないq-gramの合計

stringdist(a, b, method = "qgram") # equals 4

共有しないq-gram ÷ 総q-gram数

stringdist(a, b, method = "jaccard") # equals 0.5

最適文字列整列距離

stringdist(a, b, method = "cosine") # equals 0.22
Rで学ぶ中級正規表現

練習してみましょう!

Rで学ぶ中級正規表現

Preparing Video For Download...