Heim  >  Artikel  >  Backend-Entwicklung  >  Wie vergleicht man zwei NumPy-Arrays auf elementweise Gleichheit und prüft, ob sie völlig gleich sind?

Wie vergleicht man zwei NumPy-Arrays auf elementweise Gleichheit und prüft, ob sie völlig gleich sind?

DDD
DDDOriginal
2024-10-26 15:46:02201Durchsuche

How do you compare two NumPy arrays for element-wise equality and check if they are entirely equal?

Vergleich zweier NumPy-Arrays auf elementweise Gleichheit

Beim Vergleich zweier NumPy-Arrays auf elementweise Gleichheit kann die Verwendung verlockend sein der ==-Operator. Dieser Ansatz gibt jedoch ein boolesches Array zurück, das die Gleichheit für jedes entsprechende Elementpaar angibt. Um zu überprüfen, ob die Arrays völlig gleich sind, müssen wir feststellen, ob alle Elemente im booleschen Array True sind.

Der einfachste Weg, dies zu erreichen, ist die Verwendung des Ausdrucks (A==B).all() . Dieser Ausdruck gibt einen einzelnen booleschen Wert zurück, der „True“ ist, wenn alle Elemente des booleschen Arrays (A==B) „True“ sind, was angibt, dass jedes Element in den beiden Arrays gleich ist.

Beispiel:

<code class="python">import numpy as np

arr1 = np.array([1, 1, 1])
arr2 = np.array([1, 1, 1])

result = (arr1 == arr2).all()
print(result)  # Output: True</code>

Sonderfälle und Alternativen:

Es ist wichtig zu beachten, dass:

  • Verwendung (A==B). all() kann in seltenen Fällen True zurückgeben, wenn ein Array leer ist und das andere ein einzelnes Element enthält.
  • Wenn die Arrays unterschiedliche Formen haben und nicht sendbar sind, löst dieser Ansatz einen Fehler aus.

In diesen Fällen oder wenn Sie einen expliziteren Ansatz wünschen, sollten Sie die Verwendung der folgenden Spezialfunktionen in Betracht ziehen:

  • np.array_equal(A, B): Testet, ob die Arrays dasselbe haben Form und alle Elemente haben gleiche Werte.
  • np.array_equiv(A, B): Testet, ob die Arrays gesendet werden können und die gleichen Werte haben.
  • np.allclose(A, B, ...): Prüft, ob die Arrays die gleiche Form haben und ihre Elemente nahe genug beieinander liegen (innerhalb einer angegebenen Toleranz).

Das obige ist der detaillierte Inhalt vonWie vergleicht man zwei NumPy-Arrays auf elementweise Gleichheit und prüft, ob sie völlig gleich sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn