English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Обычные методы переворачивания массивов и т.д.
Функция | Описание |
transpose | Изменить размерности массива |
ndarray.T | и self.transpose() одинаковы |
rollaxis | Переместить указанную ось |
swapaxes | Переместить два оси массива |
Функция numpy.transpose используется для изменения размеров массива, формат如下:
numpy.transpose(arr, axes)
Описание параметров:
arr:массив для обработкиaxes:список целых чисел, соответствующий размерности, обычно все размеры будут изменены.
import numpy as np a = np.arange(12).reshape(3,4) print('Исходный массив:') print (a ) print('\n') print ('Переместить массив: ') print (np.transpose(a))
Результат вывода:
Исходный массив: [[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11]] Переместить массив: [[ 0 4 8] [ 1 5 9] [ 2 6 10] [ 3 7 11]]
numpy.ndarray.T подобен numpy.transpose:
import numpy as np a = np.arange(12).reshape(3,4) print('Исходный массив:') print(a) print('\n') print ('Транспонировать массив: ') print (a.T)
Результат вывода:
Исходный массив: [[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11]] Транспонировать массив: [[ 0 4 8] [ 1 5 9] [ 2 6 10] [ 3 7 11]]
Функция numpy.rollaxis сдвигает указанную ось в заданную позицию, формат如下:
numpy.rollaxis(arr, axis, start)
Описание параметров:
arr:массивaxis:ось, по которой будет произведено скольжение, относительное положение других осей не изменяетсяstart:по умолчанию равно нулю, означает полное скольжение. Перемещается до определенной позиции.
import numpy as np # Создан массив с тремя измерениями ndarray a = np.arange(8).reshape(2,2,2) print('Исходный массив:') print(a) print('\n') # Переместить ось 2 в ось 0 (ширина в глубину) print('Вызов функции rollaxis:') print (np.rollaxis(a,2)) # Переместить ось 0 в ось 1: (ширина в высоту) print('\n') print('Вызов функции rollaxis:') print(np.rollaxis(a, 2, 1))
Результат вывода:
Исходный массив: [[[0 1] [2 3]] [[4 5] [6 7]]] Вызов функции rollaxis: [[[0 2] [4 6]] [[1 3] [5 7]]] Вызов функции rollaxis: [[[0 2] [1 3]] [[4 6] [5 7]]]
Функция numpy.swapaxes используется для обмена двумя осями массива, формат如下:
numpy.swapaxes(arr, axis1, axis2)
arr: входной массивaxis1: целое число, соответствующее первой осиaxis2: целое число, соответствующее второму оси
import numpy as np # Создан массив с тремя измерениями ndarray a = np.arange(8).reshape(2,2,2) print('Исходный массив:') print(a) print('\n') # Теперь меняем оси 0 ( 方向 глубины) на ось 2 ( 方 широты) print('Массив после вызова функции swapaxes:') print(np.swapaxes(a, 2, 0))
Результат вывода:
Исходный массив: [[[0 1] [2 3]] [[4 5] [6 7]]] Массив после вызова функции swapaxes: [[[0 4] [2 6]] [[1 5] [3 7]]]