Функция reshape(): ****Этот метод предназначен для изменения формата массива без изменения содержимого данных.Параметры следующие:
Описание параметра:
а: входной массив.
newshape: Форма массива в новом формате.
порядок: необязательный диапазон: {'C', 'F', 'A'}. Прочитайте элементы a по порядку и поместите элементы в преобразованный массив в порядке индекса. Если параметр порядка не установлен, параметр по умолчанию — C.
Параметр C: чтение по горизонтали, запись по горизонтали, чтение/запись первой строки.
Параметр F: читать по вертикали, писать по вертикали, сначала читать/записывать один столбец.
Параметр A: Эффект сгенерированного массива связан с методом хранения данных исходного массива а. Если данные соответствуют FORTRAN
Он создает тот же эффект, что и «F», если сохранен, и такой же, как «C», в противном случае.
Возвращаемое значение: вновь сгенерированный массив
Пример 1. Преобразование одномерного массива в двумерный массив 2×8.
import numpy as np
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
a = np.asarray(a)
b = np.reshape(a, (2, 8))
print(b)
#或者这样写
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
a = np.asarray(a)
b = a.reshape((2, 8))
print(b)
Два метода записи работают одинаково, и рабочий результат:
[[ 0 1 2 3 4 5 6 7]
[ 8 9 10 11 12 13 14 15]]
Пример 2: Установите порядок F.
import numpy as np
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
a = np.asarray(a)
b = np.reshape(a, (2, 8), order='f')
print(b)
c=np.reshape(b,(4,4),order='f')
print(c)
результат операции:
Пример 3: Установить порядок на
В первом случае измените порядок на c при изменении формы массива a и установите порядок на a при изменении формы массива b. Код выглядит следующим образом:
import numpy as np
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
a = np.asarray(a)
b = np.reshape(a, (2, 8), order='C')
print(b)
x=np.reshape(b,(4,4),order='a')
print(x)
результат операции:
Можно обнаружить, что если массив b изменить в соответствии с C, x также изменится в соответствии с C.
Во втором случае измените порядок на F при изменении формы массива а и установите порядок на а при изменении формы массива б. Код выглядит следующим образом:
import numpy as np
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
a = np.asarray(a)
b = np.reshape(a, (2, 8), order='F')
print(b)
x=np.reshape(b,(4,4),order='a')
print(x)
результат операции:
Можно обнаружить, что если массив b изменить в соответствии с F, x также изменится в соответствии с F.