numpy.transpose#

numpy.транспонирование(a, оси=None)[источник]#

Возвращает массив с переставленными осями.

Для одномерного массива это возвращает неизменённое представление исходного массива, так как транспонированный вектор — это просто тот же вектор. Чтобы преобразовать одномерный массив в двумерный вектор-столбец, необходимо добавить дополнительное измерение, например, np.atleast_2d(a).T достигает этого, как и a[:, np.newaxis]. Для 2-мерного массива это стандартное транспонирование матрицы. Для n-мерного массива, если оси заданы, их порядок указывает, как оси переставляются (см. Примеры). Если оси не предоставлены, то transpose(a).shape == a.shape[::-1].

Параметры:
aarray_like

Входной массив.

осикортеж или список целых чисел, опционально

Если указано, это должен быть кортеж или список, содержащий перестановку [0, 1, …, N-1], где N — количество осей a. Отрицательные индексы также могут использоваться для указания осей. i-я ось возвращаемого массива будет соответствовать оси с номером axes[i] входных данных. Если не указано, по умолчанию range(a.ndim)[::-1], который меняет порядок осей на обратный.

Возвращает:
pndarray

a с переставленными осями. Представление возвращается, когда это возможно.

Смотрите также

ndarray.transpose

Эквивалентный метод.

moveaxis

Переместите оси массива в новые позиции.

argsort

Возвращает индексы, которые отсортировали бы массив.

Примечания

Используйте transpose(a, argsort(axes)) для инвертирования транспонирования тензоров при использовании оси аргумент ключевого слова.

Примеры

>>> import numpy as np
>>> a = np.array([[1, 2], [3, 4]])
>>> a
array([[1, 2],
       [3, 4]])
>>> np.transpose(a)
array([[1, 3],
       [2, 4]])
>>> a = np.array([1, 2, 3, 4])
>>> a
array([1, 2, 3, 4])
>>> np.transpose(a)
array([1, 2, 3, 4])
>>> a = np.ones((1, 2, 3))
>>> np.transpose(a, (1, 0, 2)).shape
(2, 1, 3)
>>> a = np.ones((2, 3, 4, 5))
>>> np.transpose(a).shape
(5, 4, 3, 2)
>>> a = np.arange(3*4*5).reshape((3, 4, 5))
>>> np.transpose(a, (-1, 0, -2)).shape
(5, 3, 4)