Transpose of a 1D NumPy Array
When working with NumPy arrays, it's important to understand the effects of transposition. Typically, the transpose of an array exchanges its rows and columns, resulting in a new array with swapped dimensions. However, in the case of a 1D array, the transpose operation has a different impact.
Consider the following Python snippet:
import numpy as np a = np.array([5,4]) print(a) print(a.T)
Instead of transposing the array, it remains unchanged. This is because the transpose of a 1D array is inherently a 1D array. Unlike in MATLAB, where "1D" arrays are effectively 2D, NumPy treats 1D arrays distinctly.
If you require a transposed 2D representation of your 1D vector, you can achieve it by slicing the vector using np.newaxis:
import numpy as np a = np.array([5,4])[np.newaxis] print(a) print(a.T)
Now, the a.T operation will produce a transposed 2D array.
It's worth noting that adding an extra dimension to a 1D vector is not always necessary. In most cases, NumPy automatically broadcasts 1D arrays for appropriate calculations, eliminating the need to explicitly distinguish between row and column vectors.
以上是轉置一維 NumPy 數組時會發生什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!