Remodelage de tableaux NumPy

C’est le chapitre le plus facile de ce cours accéléré.

Le remodelage consiste simplement à convertir des tableaux d’une dimension en une autre.

Nous n’allons pas prendre beaucoup de temps sur ce chapitre. Passons rapidement aux exemples de code et apprenons comment fonctionne le remodelage de tableaux NumPy.

arr7 = np.arange(1, 10)
arr7

# array([1, 2, 3, 4, 5, 6, 7, 8, 9])

Nous avons créé un tableau arr7 avec 9 éléments.

Comme nous avons 9 éléments, nous ne pouvons que remodeler ce tableau en :

  • 3 x 3
  • 9 x 1
  • 1 x 9

Si nous avons un tableau avec 10 éléments, nous pouvons le remodeler en :

  • 2 x 5
  • 5 x 2
  • 10 x 1
  • 1 x 10

J’espère que tu comprends le concept.

Modifions la forme de arr7.

arr7.reshape(3, 3)

""" array([[1, 2, 3],
           [4, 5, 6],
           [7, 8, 9]])
"""
arr7.reshape(9, 1)

""" array([[1],
           [2],
           [3],
           [4],
           [5],
           [6],
           [7],
           [8],
           [9]])
"""

Exercice: Créer un tableau avec 10 éléments et le remodeler en :

  • 2 x 5
  • 5 x 2
  • 10 x 1
  • 1 x 10

Voyons un autre exemple de remodelage d’un tableau de 20 éléments.

arr8 = np.arange(1, 21)
arr8

# array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20])

5 X 4 = 20

arr8.reshape(5, 4)

""" array([[ 1,  2,  3,  4],
           [ 5,  6,  7,  8],
           [ 9, 10, 11, 12],
           [13, 14, 15, 16],
           [17, 18, 19, 20]])
"""

4 X 5 = 20

arr8.reshape(4, 5)

""" array([[ 1,  2,  3,  4,  5],
           [ 6,  7,  8,  9, 10],
           [11, 12, 13, 14, 15],
           [16, 17, 18, 19, 20]])
"""

2 X 5 X 2 = 20

arr8.reshape(2, 5, 2)

""" array([[[ 1,  2],
            [ 3,  4],
            [ 5,  6],
            [ 7,  8],
            [ 9, 10]],
						
           [[11, 12],
            [13, 14],
            [15, 16],
            [17, 18],
            [19, 20]]])
"""

C’est fini pour le remodelage des tableaux.

Chapitre suivant 👉 Concaténation et fractionnement de tableaux NumPy.