Heim >Backend-Entwicklung >Python-Tutorial >Wie kann np.newaxis zur Steuerung von Array-Dimensionen in NumPy verwendet werden?
np.newaxis und seine Anwendungen verstehen
np.newaxis von NumPy ist ein leistungsstarkes Tool, mit dem Benutzer die Dimension von Arrays nahtlos vergrößern können. Bei einmaliger Verwendung von np.newaxis verwandelt sich ein eindimensionales Array in ein zweidimensionales Array, ein zweidimensionales Array wird dreidimensional und so weiter.
Szenario 1: Zeile oder Spalte erstellen Vektoren
np.newaxis erweist sich als nützlich für die explizite Konvertierung eindimensionaler Arrays in Zeilen- oder Spaltenvektoren. Durch Einfügen einer Achse entlang der ersten Dimension erstellen wir einen Zeilenvektor und durch Einfügen einer Achse entlang der zweiten Dimension erhalten wir einen Spaltenvektor.
Beispiel:
<code class="python">arr = np.arange(4) row_vec = arr[np.newaxis, :] col_vec = arr[:, np.newaxis]</code>
Szenario 2: Ermöglichen der Übertragung
np.newaxis spielt eine entscheidende Rolle bei der Erleichterung der NumPy-Übertragung für Vorgänge wie Additionen. Betrachten Sie zur Veranschaulichung die folgenden Arrays:
<code class="python">x1 = np.array([1, 2, 3, 4, 5]) x2 = np.array([5, 4, 3])</code>
Der Versuch, diese Arrays direkt in NumPy hinzuzufügen, löst aufgrund ihrer unterschiedlichen Formen einen ValueError aus. Indem wir mithilfe von np.newaxis eine neue Achse in eines der Arrays einfügen, aktivieren wir die Übertragung und ermöglichen die Fortsetzung des Vorgangs.
Beispiel:
<code class="python">x1_new = x1[:, np.newaxis] sum_array = x1_new + x2</code>
Alternativ können wir Fügen Sie x2 eine neue Achse hinzu:
<code class="python">x2_new = x2[:, np.newaxis] sum_array = x1 + x2_new</code>
Szenario 3: Dimensionen für Arrays höherer Ordnung heraufstufen
np.newaxis kann mehrmals verwendet werden, um Arrays heraufzustufen höhere Dimensionen, eine Funktion, die besonders für die Manipulation von Tensoren nützlich ist.
Beispiel:
<code class="python">arr = np.arange(5*5).reshape(5,5) arr_5D = arr[np.newaxis, ..., np.newaxis, np.newaxis]</code>
Alternativen: np.expand_dims und None
np.expand_dims bietet einen intuitiven Achsenparameter zum Erweitern von Dimensionen. Darüber hinaus kann None austauschbar mit np.newaxis verwendet werden.
Fazit
np.newaxis ist ein vielseitiges Tool zum Verwalten der Dimensionalität von NumPy-Arrays. Seine Anwendungen reichen von der Erstellung von Zeilen- oder Spaltenvektoren bis hin zur Ermöglichung der Übertragung und Förderung von Dimensionen für Arrays höherer Ordnung.
Das obige ist der detaillierte Inhalt vonWie kann np.newaxis zur Steuerung von Array-Dimensionen in NumPy verwendet werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!