Heim >Backend-Entwicklung >Python-Tutorial >Wie bestimme ich die elementweise Gleichheit von NumPy-Arrays?

Wie bestimme ich die elementweise Gleichheit von NumPy-Arrays?

Barbara Streisand
Barbara StreisandOriginal
2024-10-30 05:13:28656Durchsuche

How Do I Determine Element-wise Equality of NumPy Arrays?

Bestimmen der elementweisen Gleichheit von NumPy-Arrays

Der Vergleich zweier NumPy-Arrays auf Äquivalenz ist ein grundlegender Vorgang, der häufig in der Datenanalyse und im wissenschaftlichen Rechnen anzutreffen ist . Während der grundlegende Ansatz die Verwendung des Gleichheitsoperators (==) beinhaltet, gibt er ein boolesches Array zurück und überlässt es dem Programmierer, nach allen True-Werten zu suchen. Dies kann mühsam und fehleranfällig sein.

Um dieses Problem zu beheben, bietet NumPy eine praktische Verknüpfung:

<code class="python">(A == B).all()</code>

Dieser Ausdruck nutzt die all()-Methode, die True zurückgibt, wenn alle Elemente vorhanden sind des booleschen Arrays wahr sind, wodurch die Arrays effektiv elementweise präzise verglichen werden.

Berücksichtigung von Sonderfällen und Alternativen

Es ist erwähnenswert, dass (A == B Der .all()-Ansatz kann zu unerwartetem Verhalten führen, wenn entweder A oder B leer ist oder ein einzelnes Element enthält und das andere Array eine andere Form hat. In solchen Fällen empfiehlt es sich, spezielle Funktionen zu verwenden wie:

  • np.array_equal(A, B): Prüft auf gleiche Formen und Inhalte.
  • np.array_equiv(A, B ): Prüft auf sendefähige Formen und gleichen Inhalt.
  • np.allclose(A, B, ...): Bestimmt, ob Arrays ähnliche Formen und Elemente innerhalb einer angegebenen Toleranz haben.

Das obige ist der detaillierte Inhalt vonWie bestimme ich die elementweise Gleichheit von NumPy-Arrays?. 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