时间序列:五种编辑距离和Python实现
生活随笔
收集整理的這篇文章主要介紹了
时间序列:五种编辑距离和Python实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、什么叫編輯距離?
????????在計算語言學和計算機科學中,編輯距離是一種通過計算將一個字符串轉換為另一個字符串所需的最小操作數來量化兩個字符串(例如單詞)之間的不同程度的方法。
按照維基百科,編輯距離有五種,如果需要仔細琢磨各種距離的概念,請參考下述鏈接
- 1)Levenshtein distance,李維斯坦距離參考文章;
- 2)Longest common subsequence problem,LCS距離參考文章;
- 3)Hamming distance,海明距離
- 4)Damerau–Levenshtein distance,參考文章
- 5)Jaro–Winkler distance;編輯距離:Jaro–Winkler distance
我們將系統闡述物種不同距離,以及距離算法。
二、基于python的Levenshtein距離
2.1 安裝python程序包
在win10下,進入cmd后:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ python-Levenshtein
2.2 調入距離函數
import Levenshtein str1 = "TGTTACGG" str2 = "GATTGACTA" print(Levenshtein.distance(str1, str2))結果為5
2.3 其它編輯距離
?雖然包名稱為Levenshtein,但是可以計算各種編輯距離,如下:
- distance? ? ? ?
- jaro? ? ? ? ? ? ??
- ratio? ? ? ? ? ??
- hamming? ? ?
- jaro_winkler? ?
- apply_edit? ? ??
- editops
- inverse
- matching_blocks
- median
- median_improve
- opcodes
- quickmeian
- seqratio
- setmedian
- setratio
- subtract_edit
? ??
總結
以上是生活随笔為你收集整理的时间序列:五种编辑距离和Python实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 低差异序列:范德科皮特序列(Van de
- 下一篇: 低差别序列:高维序列(Halton se