Heim >Backend-Entwicklung >Python-Tutorial >Wie kann man mit NumPy den euklidischen Abstand im 3D-Raum effizient berechnen?
Berechnung des euklidischen Abstands mit NumPy
Sie erhalten zwei Punkte im 3D-Raum, dargestellt als NumPy-Arrays a und b. Ihr Ziel ist es, den euklidischen Abstand zwischen diesen Punkten zu berechnen.
Der euklidische Abstand zwischen zwei Punkten wird mit der folgenden Formel berechnet:
dist = sqrt((ax-bx)^2 + (ay-by)^2 + (az-bz)^2)
Um diesen Abstand mit NumPy zu berechnen, können Sie verwenden die Funktion numpy.linalg.norm. Diese Funktion berechnet die Vektornorm, also die Länge des Vektors. Der euklidische Abstand zwischen zwei Punkten ist einfach die l2-Norm ihrer Differenz.
Daher können Sie den Abstand wie folgt berechnen:
import numpy a = numpy.array((ax, ay, az)) b = numpy.array((bx, by, bz)) dist = numpy.linalg.norm(a - b)
Die Funktion numpy.linalg.norm benötigt einen Vektor als Eingabe und gibt seine Norm zurück. Der Standardwert des ord-Parameters in dieser Funktion ist 2, was der l2-Norm entspricht, auch bekannt als euklidischer Abstand.
Für ein tieferes Verständnis des euklidischen Abstands und seiner Beziehung zum l2 Norm finden Sie im Auszug aus dem Buch „Introduction to Data Mining“.
Das obige ist der detaillierte Inhalt vonWie kann man mit NumPy den euklidischen Abstand im 3D-Raum effizient berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!