Wie kann „np.ix_' die Indexauswahl und -zuweisung in mehrdimensionalen NumPy-Arrays vereinfachen?

Mary-Kate Olsen
Freigeben: 2024-10-26 19:38:02
Original
1070 Leute haben es durchsucht

How can `np.ix_` simplify index selection and assignment in multidimensional NumPy arrays?

Indizieren von Arrays und booleschen Masken für die Indexauswahl oder -zuweisung mit np.ix_

Das Bearbeiten von Auswahlen oder Zuweisungen in mehrdimensionalen NumPy-Arrays kann mit np.ix_ vereinfacht werden. So funktioniert es:

1. Verwenden von Indexierungsarrays

A. Auswahl

np.ix_ ermöglicht Ihnen die Gruppierung von Indizierungsarrays in höherdimensionale Kombinationen zur Indizierung mehrdimensionaler Arrays. Um eine Auswahl mithilfe von zwei 1D-Indizierungsarrays (z. B. row_indices und col_indices) zu treffen, verwenden Sie Folgendes:

<code class="python">x_indexed = x[np.ix_(row_indices, col_indices)]</code>
Nach dem Login kopieren

Dies entspricht einer verschachtelten Version, bei der das äußere Indizierungsarray (z. B. row_indices) gegen das innere übertragen wird Indizierungsarray (col_indices):

<code class="python">x_indexed = x[np.asarray(row_indices)[:,None], col_indices]</code>
Nach dem Login kopieren

B. Zuweisung

In ähnlicher Weise können mithilfe des von np.ix_ erstellten Indizierungs-Array-Tupels skalare Zuweisungen oder die Übertragung eines Datenblocks direkt durchgeführt werden:

<code class="python">x[np.ix_(row_indices, col_indices)] = scalar # assign a scalar
x[np.ix_(row_indices, col_indices)] = block  # assign a broadcastable block</code>
Nach dem Login kopieren

2. Boolesche Masken verwenden

np.ix_ funktioniert auch mit Booleschen Masken:

A. Auswahl

Um einen Datenblock mithilfe boolescher Masken (row_mask und col_mask) auszuwählen, verwenden Sie:

<code class="python">x[np.ix_(row_mask, col_mask)]</code>
Nach dem Login kopieren

B. Zuweisung

Für Zuweisungen mit Booleschen Masken verwenden Sie:

<code class="python">x[np.ix_(row_mask, col_mask)] = scalar # assign a scalar
x[np.ix_(row_mask, col_mask)] = block  # assign a broadcastable block</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann „np.ix_' die Indexauswahl und -zuweisung in mehrdimensionalen NumPy-Arrays vereinfachen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage