Contenu du cours
Numpy Ultime
Numpy Ultime
Découpage
Le découpage en Python fait référence à la récupération d'éléments d'un indice à un autre au sein d'une séquence. Dans ce chapitre, cependant, nous nous concentrerons sur le découpage dans les tableaux NumPy.
Découpage dans les tableaux 1D
La syntaxe générale pour le découpage dans les tableaux 1D est la suivante : array[start:end:step]
.
start
est l'indice auquel commencer le découpage ;end
est l'indice auquel le découpage se termine (l'indice lui-même n'est pas inclus) ;step
spécifie les incréments entre les indices (par défaut, c'est1
).
Voici un exemple pour clarifier le tout (les carrés violets représentent les éléments récupérés par le découpage) :
Remarque
Comme nous n'avons pas spécifié explicitement
step
, il prend par défaut la valeur de1
.
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the element at index 2 to the element at index 4 exclusive print(array[2:4]) # Slicing from the first element to the element at index 5 exclusive print(array[:5]) # Slicing from the element at index 5 to the last element inclusive print(array[5:])
Omission du Début, de la Fin et du Pas
Comme vous pouvez le voir, nous pouvons souvent omettre le start
, end
, step
, ou même tous en même temps. Par exemple, step
peut être omis lorsque nous voulons qu'il soit égal à 1
. start
et end
peuvent être omis dans les scénarios suivants :
-
Omission de
start
:- Découpage à partir du premier élément (
step
est positif); - Découpage à partir du dernier élément (
step
est négatif).
- Découpage à partir du premier élément (
-
Omission de
end
:- Découpage jusqu'au dernier élément inclus (
step
est positif); - Découpage jusqu'au premier élément inclus (
step
est négatif).
- Découpage jusqu'au dernier élément inclus (
Regardons quelques exemples supplémentaires (la flèche noire indique que les éléments sont pris dans l'ordre inverse) :
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the first element to the last element inclusive with step=2 print(array[::2]) # Slicing from the element at index 4 to the element at index 2 exclusive (step=-1) print(array[4:2:-1]) # Slicing from the last element to the first element inclusive (reversed array) print(array[::-1]) # Slicing from the first element to the last inclusive (the same as our array) print(array[:])
L'image ci-dessous montre la structure du tableau weekly_sales
utilisé dans la tâche :
Swipe to start coding
Vous analysez les données de ventes quotidiennes d'un petit magasin de détail. Les ventes de la semaine dernière sont stockées dans le tableau weekly_sales
, chaque élément représentant les ventes d'un jour spécifique.
-
Créez une tranche de
weekly_sales
qui inclut les données de ventes pour chaque deuxième jour, en commençant par le deuxième jour (mardi). -
Utilisez un index positif pour le
start
et laissez laend
non spécifiée. -
Stockez le résultat dans
alternate_day_sales
.
Solution
Merci pour vos commentaires !
Découpage
Le découpage en Python fait référence à la récupération d'éléments d'un indice à un autre au sein d'une séquence. Dans ce chapitre, cependant, nous nous concentrerons sur le découpage dans les tableaux NumPy.
Découpage dans les tableaux 1D
La syntaxe générale pour le découpage dans les tableaux 1D est la suivante : array[start:end:step]
.
start
est l'indice auquel commencer le découpage ;end
est l'indice auquel le découpage se termine (l'indice lui-même n'est pas inclus) ;step
spécifie les incréments entre les indices (par défaut, c'est1
).
Voici un exemple pour clarifier le tout (les carrés violets représentent les éléments récupérés par le découpage) :
Remarque
Comme nous n'avons pas spécifié explicitement
step
, il prend par défaut la valeur de1
.
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the element at index 2 to the element at index 4 exclusive print(array[2:4]) # Slicing from the first element to the element at index 5 exclusive print(array[:5]) # Slicing from the element at index 5 to the last element inclusive print(array[5:])
Omission du Début, de la Fin et du Pas
Comme vous pouvez le voir, nous pouvons souvent omettre le start
, end
, step
, ou même tous en même temps. Par exemple, step
peut être omis lorsque nous voulons qu'il soit égal à 1
. start
et end
peuvent être omis dans les scénarios suivants :
-
Omission de
start
:- Découpage à partir du premier élément (
step
est positif); - Découpage à partir du dernier élément (
step
est négatif).
- Découpage à partir du premier élément (
-
Omission de
end
:- Découpage jusqu'au dernier élément inclus (
step
est positif); - Découpage jusqu'au premier élément inclus (
step
est négatif).
- Découpage jusqu'au dernier élément inclus (
Regardons quelques exemples supplémentaires (la flèche noire indique que les éléments sont pris dans l'ordre inverse) :
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the first element to the last element inclusive with step=2 print(array[::2]) # Slicing from the element at index 4 to the element at index 2 exclusive (step=-1) print(array[4:2:-1]) # Slicing from the last element to the first element inclusive (reversed array) print(array[::-1]) # Slicing from the first element to the last inclusive (the same as our array) print(array[:])
L'image ci-dessous montre la structure du tableau weekly_sales
utilisé dans la tâche :
Swipe to start coding
Vous analysez les données de ventes quotidiennes d'un petit magasin de détail. Les ventes de la semaine dernière sont stockées dans le tableau weekly_sales
, chaque élément représentant les ventes d'un jour spécifique.
-
Créez une tranche de
weekly_sales
qui inclut les données de ventes pour chaque deuxième jour, en commençant par le deuxième jour (mardi). -
Utilisez un index positif pour le
start
et laissez laend
non spécifiée. -
Stockez le résultat dans
alternate_day_sales
.
Solution
Merci pour vos commentaires !