Découpage et indexation NumPy

On peut accéder au contenu d'un objet ndarray et le modifier par indexation ou découpage, tout comme les opérations de découpage des listes en Python.

Les tableaux ndarray peuvent être indexés à l'aide d'indices allant de 0 à n. Des objets de découpage peuvent être créés via la fonction slice intégrée, et en définissant les paramètres start, stop et step, on peut extraire un nouveau tableau du tableau d'origine.

Exemple

import numpy as np a = np.arange(10) s = slice(2,7,2) # Partir de l'indice 2 jusqu'à l'indice 7, avec un pas de 2 print (a[s])

Le résultat de sortie est:

[2  4  6]

Dans l'exemple ci-dessus, nous avons d'abord créé un objet ndarray à l'aide de la fonction arange(). Ensuite, nous avons défini les paramètres start, stop et step respectivement à 2, 7 et 2.

Nous pouvons également utiliser des paramètres de découpage séparés par des deux-pointsstart:stop:steppour effectuer des opérations de découpage :

Exemple

import numpy as np a = np.arange(10) b = a[2:7:2] # Partir de l'indice 2 jusqu'à l'indice 7, avec un pas de 2 print(b)

Le résultat de sortie est:

[2  4  6]

Deux-points:L'explication : si un seul paramètre est placé, comme[2], il renverra l'élément unique correspondant à cet indice. S'il s'agit de[2:], cela signifie que tous les éléments à partir de cet indice seront extraits. Si deux paramètres sont utilisés, comme[2:7], alors les éléments entre les deux indices (en excluant l'indice d'arrêt) seront extraits.

Exemple

import numpy as np a = np.arange(10) # [0 1 2 3 4 5 6 7 8 9] b = a[5] print(b)

Le résultat de sortie est:

5

Exemple

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

Le résultat de sortie est:

[2  3  4  5  6  7  8  9]

Exemple

import numpy as np a = np.arange(10) # [0 1 2 3 4 5 6 7 8 9] print(a[2:5])

Le résultat de sortie est:

[2  3  4]

Les tableaux multidimensionnels appliquent également la même méthode d'indexation et d'extraction que ci-dessus :

Exemple

import numpy as np a = np.array([[1,2,3],[3,4,5],[4,5,6]]) print(a) # Découpage à partir d'un certain indice print('Commencer le découpage à partir de l'indice de tableau a[1:]') print(a[1:])

Le résultat de sortie est:

[[1 2 3]
 [3 4 5]
 [4 5 6]]
从数组索引 a[1:] 处开始切割
[[3 4 5]
 [4 5 6]]

Le découpage peut également inclure une ellipse…, pour que la longueur du tuple de sélection soit identique à la dimension du tableau. Si une ellipse est utilisée à la position de ligne, elle renverra un ndarray contenant les éléments de la ligne.

Exemple

import numpy as np a = np.array([[1,2,3],[3,4,5],[4,5,6]]) print (a[...,1]) # Élément dans la 2e colonne print (a[1,...]) # Élément dans la 2e ligne print (a[...,1:]) # La 2e colonne et tous les éléments restants

Le résultat de sortie est:

[2 4 5]
[3 4 5]
[[2 3]
 [4 5]
 [5 6]]
Autres extensions