關於這個套件其實這位大大講得蠻清楚的了,可以點進去看基本的功能,然後文件在這。在這邊想多分享一個功能,以及公司內部實際應用的例子。
SequenceMatcher 有一個 function 是 ratio(),能幫忙計算兩個字串的相似程度,會傳回 0-1 之間的數字,0 代表完全不同,1 代表完全相同。例如:
s1 = '我是一隻快樂又漂亮的豬'
s2 = '我是豬'
s3 = '今天天氣真好'SequenceMatcher(None, s1, s2).ratio()
回傳
0.42857142857142855
再來:
SequenceMatcher(None, s1, s3).ratio()
回傳
0.0
是個蠻簡單實用的小工具,不過實際上可以怎麼應用呢?
應用情境
公司在每年辦完活動後,會請廠商填寫意見調查表,累積幾年後想要了解廠商每年意見的變化,但是發現廠商每年寫的公司名稱都不一樣,例如義美的公司全名為「義美食品股份有限公司」,廠商有時只寫「義美」,有時寫「義美食品」,有時則會寫上全名,結果導致公司名稱對不上而無法統計意見。因此我們利用這個小工具去做比對,簡單觀察大概 ratio() 出來的結果是多少以上才吻合,然後去做後續的處理。
以上是目前有實際用過的例子,簡單分享一下。