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.
以上が1D NumPy 配列を転置するとどうなりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。