So berechnen sie die levenshtein-distanz in python


Der Levenshtein-Abstand zwischen zwei Zeichenfolgen ist die Mindestanzahl von Einzelzeichenänderungen, die erforderlich sind, um ein Wort in ein anderes umzuwandeln.

Das Wort „Änderungen“ umfasst Ersetzungen, Einfügungen und Streichungen.

Angenommen, wir haben die folgenden zwei Wörter:

  • FEIERN
  • PARK

Der Levenshtein-Abstand zwischen den beiden Wörtern (d. h. die Anzahl der Änderungen, die wir vornehmen müssen, um ein Wort in das andere umzuwandeln) wäre 2 :

Beispiel für die Levenshtein-Distanz

In der Praxis wird die Levenshtein-Distanz in vielen verschiedenen Anwendungen verwendet, einschließlich Fuzzy-String-Matching, Rechtschreibprüfung und Verarbeitung natürlicher Sprache.

In diesem Tutorial wird erläutert, wie Sie den Levenshtein-Abstand zwischen Zeichenfolgen in Python mithilfe des Python-Levenshtein-Moduls berechnen.

Sie können die folgende Syntax verwenden, um dieses Modul zu installieren:

 pip install python-Levenshtein

Anschließend können Sie die Funktion laden, um die Levenshtein-Distanz zu berechnen:

 from Levenshtein import distance as lev

Die folgenden Beispiele zeigen, wie Sie diese Funktion in der Praxis nutzen können.

Beispiel 1: Levenshtein-Abstand zwischen zwei Saiten

Der folgende Code zeigt, wie der Levenshtein-Abstand zwischen den beiden Zeichenfolgen „party“ und „park“ berechnet wird:

 #calculate Levenshtein distance
lev(' party ', ' park ')

2

Der Levenshtein-Abstand beträgt 2 .

Beispiel 2: Levenshtein-Abstand zwischen zwei Tabellen

Der folgende Code zeigt, wie der Levenshtein-Abstand zwischen jeder paarweisen Kombination von Zeichenfolgen in zwei verschiedenen Arrays berechnet wird:

 #define arrays
a = ['Mavs', 'Spurs', 'Lakers', 'Cavs']
b <- ['Rockets', 'Pacers', 'Warriors', 'Celtics']

#calculate Levenshtein distance between two arrays
for i,k in zip (a,b):
  print (lev(i, k))

6
4
5
5

Das Ergebnis lässt sich wie folgt interpretieren:

  • Der Levenshtein-Abstand zwischen „Mavs“ und „Rockets“ beträgt 6 .
  • Der Levenshtein-Abstand zwischen den „Spurs“ und den „Pacers“ beträgt 4 .
  • Der Levenshtein-Abstand zwischen den „Lakers“ und den „Warriors“ beträgt 5 .
  • Der Levenshtein-Abstand zwischen „Cavs“ und „Celtics“ beträgt 5 .

Zusätzliche Ressourcen

So berechnen Sie die Hamming-Distanz in Python
So berechnen Sie den euklidischen Abstand in Python
So berechnen Sie die Mahalanobis-Distanz in Python

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert