Функция transpose
Функция transpose меняет порядок осей массива.
Первым параметром функция принимает массив, который нужно
транспонировать. Вторым параметром можно передать кортеж
с новым порядком осей. Если оси не указаны, выполняется
стандартное транспонирование (для двумерных массивов - зеркальное
отражение относительно главной диагонали).
Синтаксис
np.transpose(arr, [axes])
Пример
Давайте создадим двумерный массив размером 2x3
и выполним его транспонирование:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = np.transpose(arr)
print(res)
Результат выполнения кода:
[[1 4]
[2 5]
[3 6]]
Пример
Транспонируем массив с помощью метода T
(это сокращенная запись):
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = arr.T
print(res)
Результат выполнения кода:
[[1 4]
[2 5]
[3 6]]
Пример
Укажем новый порядок осей для трехмерного массива.
Массив имеет размеры 2x3x4, поменяем оси так,
чтобы получить размеры 4x2x3:
import numpy as np
arr = np.arange(24).reshape(2, 3, 4)
res = np.transpose(arr, (2, 0, 1))
print(res.shape)
print(res)
Результат выполнения кода:
(4, 2, 3)
[[[ 0 4 8]
[12 16 20]]
[[ 1 5 9]
[13 17 21]]
[[ 2 6 10]
[14 18 22]]
[[ 3 7 11]
[15 19 23]]]
Пример
Транспонируем одномерный массив. Для одномерного массива транспонирование не меняет его форму:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
res = np.transpose(arr)
print(res)
print(res.shape)
Результат выполнения кода:
[1 2 3 4 5]
(5,)