Transposition eines 1D-NumPy-Arrays
Bei der Arbeit mit NumPy-Arrays ist es wichtig, die Auswirkungen der Transposition zu verstehen. Typischerweise werden bei der Transponierung eines Arrays dessen Zeilen und Spalten vertauscht, was zu einem neuen Array mit vertauschten Dimensionen führt. Im Fall eines 1D-Arrays hat der Transponierungsvorgang jedoch eine andere Auswirkung.
Bedenken Sie das folgende Python-Snippet:
import numpy as np a = np.array([5,4]) print(a) print(a.T)
Anstatt das Array zu transponieren, bleibt es unverändert. Dies liegt daran, dass die Transponierte eines 1D-Arrays von Natur aus ein 1D-Array ist. Anders als in MATLAB, wo „1D“-Arrays effektiv 2D sind, behandelt NumPy 1D-Arrays unterschiedlich.
Wenn Sie eine transponierte 2D-Darstellung Ihres 1D-Vektors benötigen, können Sie dies erreichen, indem Sie den Vektor mit np.newaxis in Scheiben schneiden:
import numpy as np a = np.array([5,4])[np.newaxis] print(a) print(a.T)
Jetzt erzeugt die a.T-Operation ein transponiertes 2D Array.
Es ist erwähnenswert, dass das Hinzufügen einer zusätzlichen Dimension zu einem 1D-Vektor nicht immer notwendig ist. In den meisten Fällen sendet NumPy automatisch 1D-Arrays für entsprechende Berechnungen, sodass keine explizite Unterscheidung zwischen Zeilen- und Spaltenvektoren erforderlich ist.
Das obige ist der detaillierte Inhalt vonWas passiert mit einem 1D-NumPy-Array, wenn Sie es transponieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!