numpy.permute_dims
- numpy.permute_dims(a, axes=None)[source]
-
Возвращает массив с переставленными осями.
Для одномерного массива возвращает неизменную ссылку на исходный массив, поскольку переставленный вектор — это просто тот же вектор. Чтобы преобразовать одномерный массив в двумерный столбец, необходимо добавить дополнительное измерение, например,
np.atleast_2d(a).Tдостигает этого, как иa[:, np.newaxis]. Для двумерного массива это стандартная транспонирование матрицы. Для n-мерного массива, если заданы оси, их порядок указывает, как переставляются оси (см. примеры). Если оси не заданы, тоtranspose(a).shape == a.shape[::-1].- Параметры:
-
- aarray_like
-
Входной массив.
- axesкортеж или список целых чисел, необязательно
-
Если указано, это должен быть кортеж или список, содержащий перестановку [0,1,…,N-1], где N — количество осей
a.i-я ось возвращаемого массива будет соответствовать оси с номеромaxes[i]входного массива. Если не указано, по умолчаниюrange(a.ndim)[::-1], что инвертирует порядок осей.
- Возвращает:
-
- pndarray
-
aс переставленными осями. Возвращается ссылка на представление, когда это возможно.
См. также
ndarray.transpose-
Эквивалентный метод.
moveaxis-
Переместить оси массива в новые позиции.
argsort-
Возвращает индексы, которые отсортируют массив.
Примечания
Используйте
transpose(a, argsort(axes))для инвертирования транспонирования тензоров при использовании ключевого аргументаaxes.Примеры
>>> 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)
© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.permute_dims.html