معرفی Jellyfish؛ وقتی دو رشته دقیقا یکی نیستند، ولی شبیه هماند! 🪼
گاهی در پردازش متن، دو رشته دقیقا یکسان نیستند اما در واقع به یک چیز اشاره میکنند.
مثلا:
یا:
اینجاست که Jellyfish به کار میاد. این کتابخانه پایتون الگوریتمهای مختلفی برای مقایسه و سنجش شباهت رشتهها در اختیارمون میذاره؛ مثل:
🔹 Levenshtein
🔹 Jaro-Winkler
🔹 Soundex
🔹 Metaphone
مثلا با Jaro-Winkler:
خروجی یک عدد بین 0 و 1 هست؛ هرچه به 1 نزدیکتر باشه، دو رشته شبیهترند. این قابلیت برای کارهایی مثل پاکسازی داده، تشخیص موارد تکراری، جستجوی تقریبی، تطبیق نامها و یکسانسازی اطلاعات چند منبع خیلی کاربردیه.
#python
〰️〰️〰️〰️〰️〰️〰️
@programming_tips
گاهی در پردازش متن، دو رشته دقیقا یکسان نیستند اما در واقع به یک چیز اشاره میکنند.
مثلا:
Samsung Galaxy S21
Samsung Galaxy S21 5G
یا:
iPhone 12 Pro Max
Apple iPhone 12 Pro Max
اینجاست که Jellyfish به کار میاد. این کتابخانه پایتون الگوریتمهای مختلفی برای مقایسه و سنجش شباهت رشتهها در اختیارمون میذاره؛ مثل:
🔹 Levenshtein
🔹 Jaro-Winkler
🔹 Soundex
🔹 Metaphone
مثلا با Jaro-Winkler:
import jellyfish
a = "Samsung Galaxy S21"
b = "Samsung Galaxy S21 5G"
similarity = jellyfish.jaro_winkler_similarity(a, b)
print(similarity)
خروجی یک عدد بین 0 و 1 هست؛ هرچه به 1 نزدیکتر باشه، دو رشته شبیهترند. این قابلیت برای کارهایی مثل پاکسازی داده، تشخیص موارد تکراری، جستجوی تقریبی، تطبیق نامها و یکسانسازی اطلاعات چند منبع خیلی کاربردیه.
#python
〰️〰️〰️〰️〰️〰️〰️
@programming_tips
👍1💯1