字符串的相似性比較應(yīng)用場(chǎng)合很多,像拼寫糾錯(cuò)、文本去重、上下文相似性等。
評(píng)價(jià)字符串相似度最常見的辦法就是:把一個(gè)字符串通過插入、刪除或替換這樣的編輯操作,變成另外一個(gè)字符串,所需要的最少編輯次數(shù),這種就是編輯距離(edit distance)度量方法,也稱為L(zhǎng)evenshtein距離。海明距離是編輯距離的一種特殊情況,只計(jì)算等長(zhǎng)情況下替換操作的編輯次數(shù),只能應(yīng)用于兩個(gè)等長(zhǎng)字符串間的距離度量。
其他常用的度量方法還有 Jaccard distance、J-W距離(Jaro–Winkler distance)、余弦相似性(cosine similarity)、歐氏距離(Euclidean distance)等。
python-Levenshtein 使用
使用 pip install python-Levenshtein 指令安裝 Levenshtein
1. difflib
2. hamming距離,str1和str2長(zhǎng)度必須一致,描述兩個(gè)等長(zhǎng)字串之間對(duì)應(yīng)位置上不同字符的個(gè)數(shù)
3. 編輯距離,描述由一個(gè)字串轉(zhuǎn)化成另一個(gè)字串最少的操作次數(shù),在其中的操作包括 插入、刪除、替換
4.計(jì)算萊文斯坦比
5.計(jì)算jaro距離
6. Jaro–Winkler距離
輸出:
-
字符串
+關(guān)注
關(guān)注
1文章
585瀏覽量
20603 -
python
+關(guān)注
關(guān)注
56文章
4807瀏覽量
85040
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論