numpy.transpose()
Функция np.transpose (или сокращение a.T) меняет порядок осей массива. Для 2D — обычное транспонирование (строки становятся столбцами); для N-мерных — переставляет оси согласно параметру axes.
Сигнатура
numpy.transpose(a, axes=None)
Параметры
a— входной массив.axes— кортеж или список с новым порядком осей. По умолчанию — обратный порядок.
Возвращаемое значение
Представление массива (view) с переставленными осями.
Примеры
Пример 1. Транспонирование 2D-матрицы.
import numpy as np
m = np.array([[1, 2, 3],
[4, 5, 6]])
print(m.T)
[[1 4]
[2 5]
[3 6]]
Пример 2. Транспонирование 1D массива не меняет его.
a = np.array([1, 2, 3, 4])
print(np.transpose(a))
print(a.shape, "->", np.transpose(a).shape)
[1 2 3 4]
(4,) -> (4,)
Пример 3. Указание порядка осей для 3D.
t = np.arange(24).reshape(2, 3, 4)
print(t.shape, "->", np.transpose(t, (1, 0, 2)).shape)
(2, 3, 4) -> (3, 2, 4)
Пример 4. Из строк в столбцы — матрица с показаниями.
rows = np.array([[512, 480, 600],
[510, 482, 605]])
cols = rows.T
print(cols)
[[512 510]
[480 482]
[600 605]]
Пример 5. Транспонирование как представление (изменения отражаются).
a = np.array([[1, 2], [3, 4]])
b = a.T
b[0, 0] = 99
print(a)
[[99 2]
[ 3 4]]
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.