Introducing NumPy, Half 3: Manipulating Arrays | by Lee Vaughan | Sep, 2024

Shaping, transposing, becoming a member of, and splitting arrays

A grayscale Rubik’s cube hits itself with a hammer, breaking off tiny cubes.
Manipulating an array as imagined by DALL-E3

Welcome to Half 3 of Introducing NumPy, a primer for these new to this important Python library. Half 1 launched NumPy arrays and the best way to create them. Half 2 coated indexing and slicing arrays. Half 3 will present you the best way to manipulate current arrays by reshaping them, swapping their axes, and merging and splitting them. These duties are helpful for jobs like rotating, enlarging, and translating photographs and becoming machine studying fashions.

NumPy comes with strategies to alter the form of arrays, transpose arrays (invert columns with rows), and swap axes. You’ve already been working with the reshape() methodology on this sequence.

One factor to concentrate on with reshape() is that, like all NumPy assignments, it creates a view of an array reasonably than a copy. Within the following instance, reshaping the arr1d array produces solely a short lived change to the array:

In [1]: import numpy as np

In [2]: arr1d = np.array([1, 2, 3, 4])

In [3]: arr1d.reshape(2, 2)
Out[3]:
array([[1, 2],
[3, 4]])

In [4]: arr1d
Out[4]: array([1, 2, 3, 4])

This conduct is beneficial if you wish to briefly change the form of the array to be used in a…