Изменение формы и объединение массивов
Изменение формы и объединение массивов в NumPy являются ключевыми операциями для манипулирования данными и подготовки их к анализу. Рассмотрим эти операции подробно.
Изменение формы массивов
Изменение формы массива позволяет вам изменять его представление, не изменяя самих данных. Это полезно при работе с многомерными данными и векторизацией.
reshape
reshape
Функция reshape
изменяет форму массива, сохраняя данные в том же порядке. Новая форма должна содержать такое же количество элементов, как и исходный массив.
Если один из размеров равен
-1
, NumPy автоматически вычислит его размер:
resize
resize
Функция resize
изменяет форму массива и может изменить его размер. В отличие от reshape
, она создает новый массив, если новые размеры больше, чем старые. Если размер меньше, то лишние элементы будут отброшены.
ravel
и flatten
ravel
и flatten
Функции ravel
и flatten
преобразуют многомерный массив в одномерный. Разница между ними в том, что ravel
возвращает представление массива, если это возможно, в то время как flatten
всегда возвращает копию.
transpose
и swapaxes
transpose
и swapaxes
transpose
меняет местами оси массива. В случае двухмерного массива это просто транспонирование.swapaxes
меняет местами две оси массива.
Объединение массивов
Объединение массивов позволяет вам комбинировать несколько массивов в один. NumPy предоставляет несколько способов объединения массивов по разным осям.
np.concatenate
np.concatenate
Функция concatenate
объединяет последовательность массивов вдоль указанной оси. Все массивы должны иметь одинаковую форму, кроме оси объединения.
np.vstack
и np.hstack
np.vstack
и np.hstack
vstack
объединяет массивы по вертикали (добавляет строки):hstack
объединяет массивы по горизонтали (добавляет столбцы):
np.stack
np.stack
Функция stack
объединяет массивы по новой оси. Это отличается от concatenate
, так как добавляется новая ось.
np.split
, np.hsplit
, np.vsplit
np.split
, np.hsplit
, np.vsplit
Функции для разбиения массива на части:
split
делит массив на части вдоль указанной оси:hsplit
иvsplit
делят массив по горизонтали и вертикали соответственно:
Заключение
Изменение формы и объединение массивов в NumPy предоставляет гибкие и мощные средства для манипулирования данными. Эти операции являются основой для подготовки данных к анализу и моделированию, а также для оптимизации производительности при работе с большими объемами данных.
Last updated