NumPy-Einheitsvektor

Muhammad Maisam Abbas 30 Januar 2023
  1. Einheitsvektor aus NumPy-Array mit der Funktion numpy.linalg.norm() holen
  2. Holen Sie den Einheitsvektor aus dem NumPy-Array mit dem selbstdefinierten Ansatz
NumPy-Einheitsvektor

In diesem Tutorial wird die Methode zum Normalisieren eines NumPy-Arrays auf einen Einheitsvektor in Python erläutert.

Einheitsvektor aus NumPy-Array mit der Funktion numpy.linalg.norm() holen

Ein Vektor ist eine Größe, die sowohl eine Größe als auch eine Richtung hat. Ein Einheitsvektor ist ein Vektor, dessen Betrag gleich eins ist. Mit Hilfe der Funktion numpy.linalg.norm() können wir einen Vektor auf seinen entsprechenden Einheitsvektor normieren. Die Bibliothek numpy.linalg enthält viele Funktionen rund um die lineare Algebra. Wir können die Funktion norm() innerhalb von numpy.linalg verwenden, um die Norm eines Vektors zu berechnen. Wir können den Vektor durch seine Norm dividieren, um den Einheitsvektor des Vektors zu erhalten.

import numpy as np

vector = np.array([1, 2, 3])

unit_vector = vector / np.linalg.norm(vector)
print(unit_vector)

Ausgabe:

[0.26726124 0.53452248 0.80178373]

Den Vektor haben wir zuerst mit der Funktion numpy.array() erstellt. Wir haben dann den Einheitsvektor des Vektors berechnet, indem wir den Vektor durch die Norm des Vektors geteilt haben und das Ergebnis im unit_vector gespeichert.

Holen Sie den Einheitsvektor aus dem NumPy-Array mit dem selbstdefinierten Ansatz

Wir können den Einheitsvektor auch berechnen, ohne die Funktion norm() innerhalb der Bibliothek numpy.linalg in Python zu verwenden. Wir können die Norm finden, indem wir die Quadratwurzel der Summe der Quadrate jedes Elements innerhalb des Vektors berechnen. Wir können dann den Einheitsvektor berechnen, indem wir den Vektor durch seine Norm dividieren. Siehe das folgende Codebeispiel.

import numpy as np

vector = np.array([1, 2, 3])

unit_vector = vector / (vector ** 2).sum() ** 0.5
print(unit_vector)

Ausgabe:

[0.26726124 0.53452248 0.80178373]

Den Vektor haben wir zuerst mit der Funktion numpy.array() erstellt. Wir haben dann den Einheitsvektor des Vektors berechnet, indem wir den Vektor durch die Norm des Vektors geteilt haben und das Ergebnis im unit_vector gespeichert.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn