0Pricing
Learn AI with Python · Leçon

Indexation, découpage et indexation avancée

Découpage élémentaire, masque booléen, indexation avancée et np.where() pour la sélection conditionnelle.

Indexation, découpage et indexation avancée est une leçon Learn AI with Python gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.

Bases de l’indexation

Les tableaux NumPy utilisent une indexation commençant à zéro, comme les listes Python. Les indices négatifs comptent à partir de la fin.

import numpy as np
a = np.array([10, 20, 30, 40, 50])
print(a[0])    # 10
print(a[-1])   # 50

Découpage 1D

Les découpages utilisent start:stop:step et renvoient une vue (pas une copie) : modifier un découpage modifie donc l’original.

print(a[1:4])    # [20 30 40]
print(a[::2])    # [10 30 50]
view = a[1:3]
view[0] = 99
print(a)         # [10 99 30 40 50]

Indexation 2D [ligne, colonne]

Pour les tableaux 2D, utilisez une seule paire de crochets contenant les deux coordonnées : m[row, col]. C’est plus clair et plus rapide que m[row][col].

m = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(m[1, 2])   # 6
print(m[0, 0])   # 1

Découpage des lignes et des colonnes

Utilisez deux-points pour sélectionner un axe entier. m[:, 1] sélectionne la colonne 1 sur toutes les lignes.

print(m[0, :])    # first row:    [1 2 3]
print(m[:, 1])    # second col:   [2 5 8]
print(m[1:, :2])  # bottom-left block

Masques booléens

Une comparaison produit un tableau booléen de même forme. L’indexation avec ce masque ne conserve que les positions vraies.

a = np.array([5, 12, 7, 20, 3])
mask = a > 8
print(mask)     # [False  True False  True False]
print(a[mask])  # [12 20]

Combinaison de conditions

Utilisez & (et) et | (ou) élément par élément, avec des parenthèses. Les mots-clés Python and/or ne fonctionnent pas sur les tableaux (NOT).

print(a[(a > 4) & (a < 15)])   # [ 5 12  7]

Affectation au moyen d’un masque

Vous pouvez écrire dans les positions masquées pour nettoyer les données sur place, par exemple en plafonnant les valeurs aberrantes.

a = np.array([5, 12, 7, 20, 3])
a[a > 10] = 10
print(a)   # [ 5 10  7 10  3]

Indexation avancée avec des tableaux

Transmettez un tableau (ou une liste) d’indices entiers pour sélectionner des éléments arbitraires dans n’importe quel ordre, éventuellement avec des répétitions. Cela renvoie une copie, et non une vue.

a = np.array([10, 20, 30, 40, 50])
idx = [4, 0, 2, 2]
print(a[idx])   # [50 10 30 30]

Indexation avancée en 2D

Fournissez deux tableaux d’indices pour sélectionner des paires (ligne, colonne) précises. Ici, nous récupérons les coins de la diagonale.

m = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
rows = [0, 2]
cols = [0, 2]
print(m[rows, cols])   # [1 9]

Sélection conditionnelle avec np.where

np.where(cond, x, y) renvoie les éléments de x lorsque la condition est vraie et ceux de y sinon : c’est une conditionnelle vectorisée.

a = np.array([-2, 5, -7, 3])
print(np.where(a < 0, 0, a))   # [0 5 0 3]  (clip negatives)

np.where pour trouver les indices

Appelé avec un seul argument, np.where(cond) renvoie les indices auxquels la condition est satisfaite.

a = np.array([10, 20, 30, 40])
print(np.where(a > 15))   # (array([1, 2, 3]),)

Vérification rapide

Testez vos compétences en indexation.

Récapitulatif

Techniques de sélection :

  • Indexation et découpage de base (les découpages sont des vues)
  • Accès 2D avec m[row, col], axe entier avec :
  • Masques booléens avec & et |
  • Indexation avancée avec des tableaux d’indices (renvoie une copie)
  • np.where(cond, x, y) pour une conditionnelle vectorisée

Questions Fréquemment Posées

La leçon « Indexation, découpage et indexation avancée » est-elle gratuite ?

Oui — le texte complet de « Indexation, découpage et indexation avancée » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Indexation, découpage et indexation avancée » ?

Découpage élémentaire, masque booléen, indexation avancée et np.where() pour la sélection conditionnelle. Tu pratiques Learn AI with Python avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Learn AI with Python ?

Aucune expérience préalable n'est requise. Learn AI with Python sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Indexation, découpage et indexation avancée » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Learn AI with Python ?

Oui. Chaque leçon Learn AI with Python inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Création et propriétés des tableaux
  2. Indexation, découpage et indexation avancée
  3. Diffusion et opérations vectorisées
  4. Algèbre linéaire avec NumPy
← Retour à Learn AI with Python