Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Assignation de Valeurs aux Sous-Tableaux Indexés | Indexation et Découpage
Numpy Ultime
course content

Contenu du cours

Numpy Ultime

Numpy Ultime

1. Bases de NumPy
2. Indexation et Découpage
3. Fonctions NumPy Couramment Utilisées
4. Math avec NumPy

book
Assignation de Valeurs aux Sous-Tableaux Indexés

Avec les tableaux indexés, les choses commencent à devenir plus intéressantes. Ici, nous nous concentrerons sur les sous-tableaux 1D et 2D, car les sous-tableaux 3D sont rarement utilisés en pratique.

Commençons d'abord par l'affectation de valeurs aux tranches. La syntaxe générale ressemble à ceci : slice = values, où slice est une tranche d'un certain tableau et values sont les valeurs à affecter.

Formats possibles de values :

  • un scalaire unique (nombre) ;
  • un tableau 1D de la même taille que la tranche (si elle est 1D) ; ou la taille de la deuxième dimension (si la tranche est 2D) ;
  • un tableau 2D de la même forme qu'une tranche 2D.
123456789101112131415161718
import numpy as np array_1d = np.array([1, 4, 6, 2, 9]) # Assigning an array to the slice of array_1d array_1d[1:-1] = np.array([3, 5, 7]) print(array_1d) # Assigning a scalar to the slice of array_1d array_1d[1:-1] = 5 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # Assigning a 2D array to the slice of array_2d array_2d[1:3, 1:] = np.array([[20, 21], [40, 41]]) print(array_2d) # Assigning a 1D array to the slice of array_2d array_2d[1:3, 1:] = [50, 51] print(array_2d) # Assigning a scalar to the slice of array_2d array_2d[1:3, 1:] = 30 print(array_2d)
copy

Lorsque nous attribuons un scalaire à une tranche 1D, ce scalaire est attribué à chaque élément de la tranche. Lorsqu'un tableau 1D est attribué à une tranche 2D, ce tableau 1D est attribué à chaque tableau 1D de la tranche. L'attribution d'un scalaire à une tranche 2D fonctionne de la même manière qu'avec une tranche 1D.

L'attribution de valeurs à des sous-tableaux indexés par tableau d'entiers fonctionne de la même manière qu'avec les tranches. L'attribution de valeurs à des sous-tableaux indexés par booléens fonctionne de la même manière qu'avec les tranches 1D.

Tâche

Swipe to start coding

Vous gérez un ensemble de données de prix et de notes de produits. Les prix sont stockés dans le tableau prices, et les notes (sur 10) sont stockées dans le tableau ratings, où chaque ligne représente une catégorie de produit différente. Votre tâche est de mettre à jour les prix et les notes en fonction de critères spécifiques :

  1. Attribuez la valeur 20 à chaque élément de prices supérieur à 10 (indexation booléenne) en utilisant un scalaire.
  2. Attribuez un tableau NumPy avec les éléments 9, 8 aux deux derniers éléments de la deuxième ligne (deuxième tableau 1D) de ratings. Utilisez un indice de ligne positif et une tranche spécifiant uniquement le start (indice positif).

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 10
toggle bottom row

book
Assignation de Valeurs aux Sous-Tableaux Indexés

Avec les tableaux indexés, les choses commencent à devenir plus intéressantes. Ici, nous nous concentrerons sur les sous-tableaux 1D et 2D, car les sous-tableaux 3D sont rarement utilisés en pratique.

Commençons d'abord par l'affectation de valeurs aux tranches. La syntaxe générale ressemble à ceci : slice = values, où slice est une tranche d'un certain tableau et values sont les valeurs à affecter.

Formats possibles de values :

  • un scalaire unique (nombre) ;
  • un tableau 1D de la même taille que la tranche (si elle est 1D) ; ou la taille de la deuxième dimension (si la tranche est 2D) ;
  • un tableau 2D de la même forme qu'une tranche 2D.
123456789101112131415161718
import numpy as np array_1d = np.array([1, 4, 6, 2, 9]) # Assigning an array to the slice of array_1d array_1d[1:-1] = np.array([3, 5, 7]) print(array_1d) # Assigning a scalar to the slice of array_1d array_1d[1:-1] = 5 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # Assigning a 2D array to the slice of array_2d array_2d[1:3, 1:] = np.array([[20, 21], [40, 41]]) print(array_2d) # Assigning a 1D array to the slice of array_2d array_2d[1:3, 1:] = [50, 51] print(array_2d) # Assigning a scalar to the slice of array_2d array_2d[1:3, 1:] = 30 print(array_2d)
copy

Lorsque nous attribuons un scalaire à une tranche 1D, ce scalaire est attribué à chaque élément de la tranche. Lorsqu'un tableau 1D est attribué à une tranche 2D, ce tableau 1D est attribué à chaque tableau 1D de la tranche. L'attribution d'un scalaire à une tranche 2D fonctionne de la même manière qu'avec une tranche 1D.

L'attribution de valeurs à des sous-tableaux indexés par tableau d'entiers fonctionne de la même manière qu'avec les tranches. L'attribution de valeurs à des sous-tableaux indexés par booléens fonctionne de la même manière qu'avec les tranches 1D.

Tâche

Swipe to start coding

Vous gérez un ensemble de données de prix et de notes de produits. Les prix sont stockés dans le tableau prices, et les notes (sur 10) sont stockées dans le tableau ratings, où chaque ligne représente une catégorie de produit différente. Votre tâche est de mettre à jour les prix et les notes en fonction de critères spécifiques :

  1. Attribuez la valeur 20 à chaque élément de prices supérieur à 10 (indexation booléenne) en utilisant un scalaire.
  2. Attribuez un tableau NumPy avec les éléments 9, 8 aux deux derniers éléments de la deuxième ligne (deuxième tableau 1D) de ratings. Utilisez un indice de ligne positif et une tranche spécifiant uniquement le start (indice positif).

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 10
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt