So berechnen sie die hamming-distanz in python (mit beispielen)


Der Hamming-Abstand zwischen zwei Vektoren ist einfach die Summe der entsprechenden Elemente, die sich zwischen den Vektoren unterscheiden.

Angenommen, wir haben die folgenden zwei Vektoren:

 x = [1, 2, 3, 4]

y = [1, 2, 5, 7]

Der Hamming-Abstand zwischen den beiden Vektoren wäre 2 , da dies die Gesamtzahl der übereinstimmenden Elemente mit unterschiedlichen Werten ist.

Um den Hamming-Abstand zwischen zwei Arrays in Python zu berechnen, können wir die Funktion hamming() aus der Bibliothek scipy.spatial.distance verwenden, die die folgende Syntax verwendet:

 scipy. spatial . distance . hamming (array1, array2)

Beachten Sie, dass diese Funktion den Prozentsatz übereinstimmender Elemente zurückgibt, die sich zwischen den beiden Arrays unterscheiden.

Um die Hamming-Distanz zu erhalten, können wir einfach mit der Länge einer der Tabellen multiplizieren:

 scipy. spatial . distance . hamming (array1, array2) * len (array1)

Dieses Tutorial bietet mehrere Beispiele für die praktische Verwendung dieser Funktion.

Beispiel 1: Hamming-Abstand zwischen binären Arrays

Der folgende Code zeigt, wie die Hamming-Distanz zwischen zwei Arrays berechnet wird, die jeweils nur zwei mögliche Werte enthalten:

 from scipy. spatial . distance import hamming

#define arrays
x = [0, 1, 1, 1, 0, 1]
y = [0, 0, 1, 1, 0, 0]

#calculate Hamming distance between the two arrays
hamming(x, y) * len (x)

2.0

Der Hamming-Abstand zwischen den beiden Tabellen beträgt 2 .

Beispiel 2: Hamming-Abstand zwischen numerischen Arrays

Der folgende Code zeigt, wie die Hamming-Distanz zwischen zwei Arrays berechnet wird, die jeweils mehrere numerische Werte enthalten:

 from scipy. spatial . distance import hamming

#define arrays
x = [7, 12, 14, 19, 22]
y = [7, 12, 16, 26, 27]

#calculate Hamming distance between the two arrays
hamming(x, y) * len (x)

3.0

Der Hamming-Abstand zwischen den beiden Tabellen beträgt 3 .

Beispiel 3: Hamming-Abstand zwischen String-Arrays

Der folgende Code zeigt, wie die Hamming-Distanz zwischen zwei Arrays berechnet wird, die jeweils mehrere Zeichenwerte enthalten:

 from scipy. spatial . distance import hamming 

#define arrays
x = ['a', 'b', 'c', 'd']
y = ['a', 'b', 'c', 'r']

#calculate Hamming distance between the two arrays
hamming(x, y) * len (x)

1.0

Der Hamming-Abstand zwischen den beiden Tabellen beträgt 1 .

Zusätzliche Ressourcen

So berechnen Sie den euklidischen Abstand in Python
So berechnen Sie die Mahalanobis-Distanz in Python
So berechnen Sie die Jaccard-Ähnlichkeit in Python

Einen Kommentar hinzufügen

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