NumPy transpose() 函式



NumPy 的transpose()函式會置換給定陣列的維度。它會在可能的情況下返回一個檢視。它常用於資料處理、科學計算和機器學習任務中,在這些任務中多維陣列很常見。

預設情況下,此函式會反轉陣列的維度。陣列根據axes的值進行轉置。

如果我們想根據特定順序轉置陣列,我們可以傳遞所需的軸順序。例如,如果我們有一個3D陣列,並且我們想交換第一個軸和最後一個軸,我們可以傳遞(2, 1, 0)。

語法

NumPy transpose() 函式的語法如下:

numpy.transpose(a, axes=None)

引數

以下是 NumPy transpose() 函式的引數:

  • a : 要轉置的陣列。
  • axes : 元組或整數列表,可選

返回值

transpose() 函式返回轉置後的陣列,其資料型別與輸入陣列相同。

示例 1

以下是 numpy transpose() 函式的示例,其中轉置操作交換了二維陣列的行和列:

import numpy as np

# Original 2D array
array_2d = np.array([[1, 2, 3], [4, 5, 6]])

# Transposing the 2D array
transposed_2d = np.transpose(array_2d)

print("Original array:\n", array_2d)
print("Transposed array:\n", transposed_2d)

輸出

Original array:
 [[1 2 3]
 [4 5 6]]
Transposed array:
 [[1 4]
 [2 5]
 [3 6]]

示例 2

在這個例子中,我們將使用swapaxes()函式來交換三維ndarray中指定的軸,有效地重新排序陣列的維度:

import numpy as np

# Original 3D array
array_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])

# Transposing the 3D array with specified axes
transposed_3d = np.transpose(array_3d, axes=(1, 0, 2))

print("Original array:\n", array_3d)
print("Transposed array with axes (1, 0, 2):\n", transposed_3d)

輸出

Original array:
 [[[1 2]
  [3 4]]

 [[5 6]
  [7 8]]]
Transposed array with axes (1, 0, 2):
 [[[1 2]
   [5 6]]

  [[3 4]
   [7 8]]]
numpy_array_manipulation.htm
廣告