Indexation et découpage en tranches

30 min 1 exercice Niveau 2

Introduction

Le contenu de l'objet ndarray peut être accédé et modifié par indexation ou découpage, tout comme les objets conteneurs intégrés de Python.

Comme mentionné précédemment, les éléments de l'objet ndarray suivent un index basé sur zéro. Trois types de méthodes d'indexation sont disponibles : l'accès aux champs, le découpage de base et l'indexation avancée.

Le découpage de base est une extension du concept de base de Python de découpage à n dimensions. Un objet Python slice est construit en donnant les paramètres start, stop, et step à la fonction slice intégrée. Cet objet slice est passé au tableau pour extraire une partie du tableau.

Exemple 1

import numpy as np 
a = np.arange(10) 
s = slice(2,7,2) 
print a[s]

Sa sortie est la suivante -

[2  4  6]

Dans l'exemple ci-dessus, un objet ndarray est préparé par la fonction arange(). Ensuite, un objet slice est défini avec les valeurs start, stop, et step 2, 7, et 2 respectivement. Lorsque cet objet slice est transmis à l'objet ndarray, une partie de celui-ci, de l'indice 2 à l'indice 7, avec un pas de 2, est découpée en tranches.

Le même résultat peut également être obtenu en donnant les paramètres de découpage séparés par deux points : (start:stop:step) directement à l'objet ndarray.

Exemple 2

import numpy as np 
a = np.arange(10) 
b = a[2:7:2] 
print b

Ici, nous obtiendrons le même résultat -

[2  4  6]

Si un seul paramètre est mis, un seul élément correspondant à l'index sera retourné. Si un : est inséré devant, tous les éléments à partir de cet index seront extraits. Si deux paramètres (avec un : entre eux) sont utilisés, les éléments situés entre les deux index (sans inclure l'index d'arrêt) avec le pas par défaut un sont découpés en tranches.

logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus