NumPy Array gleich

Muhammad Maisam Abbas 30 Januar 2023
  1. Gleichheitsprüfung von NumPy-Arrays mit dem Operator == in Python
  2. NumPy Arrays Gleichheitsprüfung mit der Funktion numpy.array_equal()
  3. NumPy Arrays Gleichheitsprüfung mit der Funktion numpy.array_equiv() in Python
  4. NumPy gleich mit der Funktion numpy.allcloses() in Python
NumPy Array gleich

Dieser Artikel stellt die Methoden vor, um einen elementweisen Gleichheitsvergleich für NumPy-Arrays in Python durchzuführen.

Gleichheitsprüfung von NumPy-Arrays mit dem Operator == in Python

Der Gleichheitsvergleichsoperator == wird verwendet, um zu überprüfen, ob zwei Größen gleich sind oder nicht. Der Operator == gibt True zurück, wenn die Mengen gleich sind, und False, wenn die Mengen nicht gleich sind. Wir können den Operator == zusammen mit der Funktion all() verwenden, um zu überprüfen, ob alle Elemente der beiden Arrays gleich sind oder nicht. Das folgende Codebeispiel zeigt uns, wie wir zwei Arrays elementweise auf Gleichheit mit dem Operator == in Python vergleichen können.

import numpy as np

array1 = np.array([1, 2, 3, 4, 5])

array2 = np.array([1, 2, 3, 4, 5])
print((array1 == array2).all())

Ausgabe:

True

Im obigen Code haben wir elementweise die Arrays array1 und array2 auf Gleichheit mit dem Operator == und der Funktion all() verglichen. Wir haben zuerst die Arrays array1 und array2 mit der Funktion np.array() erstellt. Wir haben dann den Operator == mit der Funktion all() verwendet, um zu überprüfen, ob alle Werte in array1 gleich den Werten in array2 sind. Dieser Ansatz ist sehr effizient und leicht zu verstehen, hat jedoch einige Nachteile. Wenn beispielsweise eines der Arrays leer ist und das zweite Array nur ein Element enthält, gibt dieser Ansatz den Wert True zurück. Ein weiteres Problem besteht darin, dass dieser Ansatz zu einem Fehler führt, wenn beide Arrays unterschiedliche Formen haben.

NumPy Arrays Gleichheitsprüfung mit der Funktion numpy.array_equal()

Eine gründlichere und fehlerfreiere Möglichkeit, das gleiche Ziel wie beim vorherigen Ansatz zu erreichen, ist die Verwendung der Funktion numpy.array_equal(). Die Funktion numpy.array_equal() vergleicht zwei Arrays auf Gleichheit. Die Funktion numpy.array_equal() gibt True zurück, wenn die Arrays gleich sind und False, wenn die Arrays nicht gleich sind. Das folgende Codebeispiel zeigt uns, wie wir mit der Funktion numpy.array_equal() elementweise zwei Arrays auf Gleichheit vergleichen können.

import numpy as np

array1 = np.array([1, 2, 3, 4, 5])

array2 = np.array([1, 2, 3, 4, 5])
print(np.array_equal(array1, array2))

Ausgabe:

True

Im obigen Code haben wir die Funktion np.array_equal() verwendet, um zu überprüfen, ob alle Werte in array1 gleich den Werten in array2 sind.

NumPy Arrays Gleichheitsprüfung mit der Funktion numpy.array_equiv() in Python

Mit der Funktion numpy.array_equiv() kann auch in Python überprüft werden, ob zwei Arrays gleich sind oder nicht. Die Funktion numpy.array_equiv() gibt True zurück, wenn beide Arrays die gleiche Form haben und alle Elemente gleich sind, andernfalls gibt sie False zurück.

import numpy as np

array1 = np.array([1, 2, 3, 4, 5])

array2 = np.array([0, 2, 3, 4, 5])
print(np.array_equiv(array1, array2))

Ausgabe:

False

Im obigen Code haben wir die Funktion np.array_equiv() verwendet, um zu überprüfen, ob array1 gleich array2 ist.

NumPy gleich mit der Funktion numpy.allcloses() in Python

Mit der Funktion numpy.allclose() kann auch in Python überprüft werden, ob zwei Arrays elementweise gleich sind oder nicht. Die Funktion numpy.allclose() gibt True zurück, wenn alle Elemente in beiden Arrays innerhalb einer vorgegebenen Toleranz gleich sind.

import numpy as np

array1 = np.array([1, 2, 3, 4, 5])

array2 = np.array([1, 2, 3, 4, 5])
print(np.allclose(array1, array2))

Ausgabe:

False

Im obigen Code haben wir die Funktion np.allclose() verwendet, um zu überprüfen, ob array1 gleich array2 ist.

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