Автор оригинала: Pankaj Kumar.
Эй, ребята! Надеюсь, у вас все хорошо. В этой статье мы разберемся в работе функции Python numpy.reshape () .
Как мы все знаем, модуль Python NumPy предоставляет нам огромное количество функций для манипулирования математическими данными и работы с ними. Здесь мы расскажем о функционировании функции Numpy reshape ().
Итак, давайте начнем!
Работа функции Python numpy.reshape()
Функция Python numpy.reshape ()
позволяет нам изменять форму массива , т. е. изменять размеры элементов массива. Изменение формы массива поможет нам изменить количество значений данных, находящихся в определенном измерении.
Важно отметить, что функция reshape() сохраняет размер массива , т. Е. не изменяет количество элементов массива.
Давайте теперь разберемся в структуре функции numpy.reshape() в следующем разделе.
Синтаксис функции Python numpy.reshape()
array-name.reshape(shape)
shape
: Это кортеж целочисленных значений, в соответствии с которым элементы изменяются.
Давайте рассмотрим пример, чтобы понять процесс передачи фигуры в функцию reshape ().
Если у нас есть 16 элементов во входном массиве, поэтому нам нужно передать такие целочисленные значения, как кортеж, в параметр формы, чтобы произведение этих значений кортежа равнялось числу элементов, т. Е. 16.
Параметр shape может иметь следующие возможности:
- [2,8]
- [8,2]
- [4,4]
- [16,1]
- [1,16]
- [4,2,2]
Давайте теперь рассмотрим приведенные ниже примеры, чтобы лучше понять функцию numpy.reshape ().
Реализация Python numpy.reshape() с примерами
В приведенном ниже примере мы создали 1-D массив из 16 элементов с помощью функции numpy.arange ().
Кроме того, мы изменили размеры массива в 2-D массив из 4 элементов на измерение с помощью функции reshape ().
import numpy as np arr = np.arange(16) print("Array elements: \n", arr) res = np.arange(16).reshape(4, 4) print("\nArray reshaped as 4 rows and 4 columns: \n", res)
Выход:
Array elements: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] Array reshaped as 4 rows and 4 columns: [[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15]]
Теперь мы изменили форму и преобразовали 1-D массив в массив с 2 элементами на измерение.
import numpy as np arr = np.arange(16) print("Array elements: \n", arr) res = np.arange(16).reshape(4,2,2) print("\nArray reshaped: \n", res)
Выход:
Array elements: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] Array reshaped: [[[ 0 1] [ 2 3]] [[ 4 5] [ 6 7]] [[ 8 9] [10 11]] [[12 13] [14 15]]]
В приведенном ниже примере мы преобразовали 2-D массив в массив одного измерения, передав значение -1 функции reshape ().
import numpy as np arr = np.array([[1, 2, 3,4], [10, 11, 12,13],[5,6,7,8]]) print("Array elements: \n", arr) res = arr.reshape(-1) print("\nArray reshaped as 1-D Array: \n", res)
Выход:
Array elements: [[ 1 2 3 4] [10 11 12 13] [ 5 6 7 8]] Array reshaped as 1-D Array: [ 1 2 3 4 10 11 12 13 5 6 7 8]
Вывод
На этом мы подошли к концу этой темы. Не стесняйтесь комментировать ниже, если у вас возникнут какие-либо сомнения. Счастливого Обучения!