Изменение формы данных
В некоторых случаях вам необходимо поменять форму вашего массива данных. Для этого используется функция reshape()
. Синтаксис будет следующим:
numpy.reshape(a, newShape, order='C')
В этом синтаксисе:
a
— массив, форму которого вы хотите изменить,newShape
— желаемая форма,order
— определяет порядок хранения массива в памяти (указывается опционально). По умолчанию задан параметр ‘C’, что означает построковое хранение. Можно поменять на ‘F’ и хранить по колонкам, в стиле Fortran.
Пример
import numpy as np e = np.array([(1,2,3), (4,5,6)]) print(e) e.reshape(3,2)
Output:
// Before reshape [[1 2 3] [4 5 6]]
//After Reshape array([[1, 2], [3, 4], [5, 6]])
Функция flatten()
При работе с нейронными сетями, например со сверточными, часто нужно преобразовывать массивы в одномерный вектор. Для этих целей можно использовать функцию flatten()
. Синтаксис у нее следующий:
numpy.flatten(order='C')
Здесь order
— опциональный параметр. По умолчанию задается ‘C’ , при этом преобразование в вектор будет производиться построчно.
Пример
e.flatten()
Output:
array([1, 2, 3, 4, 5, 6])