logo oujood
🔍

Introduction à NumPy

NumPy (Numerical Python) est la bibliothèque de base du calcul numérique en Python. Avant de manipuler des données avec Pandas ou de tracer des graphiques avec Matplotlib, on passe presque toujours par NumPy.

OUJOOD.COM

C'est quoi NumPy, concrètement ?

NumPy, c'est le socle sur lequel repose une grande partie de l'écosystème scientifique Python. Pandas l'utilise en interne. Matplotlib aussi. Même TensorFlow s'en inspire pour ses tableaux de données.

La pièce centrale de NumPy, c'est le ndarray — un tableau multidimensionnel rapide et économe en mémoire. Contrairement aux listes Python classiques, un ndarray ne peut contenir qu'un seul type de données. Ce compromis lui permet d'être radicalement plus efficace sur de gros volumes.

Un exemple simple pour sentir la différence :

  📋 Copier le code

# Avec une liste Python classique
ma_liste = [1, 2, 3, 4, 5]
double_liste = [x * 2 for x in ma_liste]
print(double_liste)  # [2, 4, 6, 8, 10]

# Avec NumPy : on opère directement sur le tableau
import numpy as np
mon_tableau = np.array([1, 2, 3, 4, 5])
double_tableau = mon_tableau * 2
print(double_tableau)  # [ 2  4  6  8 10]
  

Le résultat est identique. Mais la syntaxe NumPy est plus directe — et sur des millions de valeurs, la différence de vitesse devient très visible.

Pourquoi NumPy plutôt que les listes Python ?

Les listes Python sont flexibles : elles peuvent mélanger des entiers, des chaînes, des objets. Cette souplesse a un coût en mémoire et en vitesse. NumPy fait le choix inverse : homogénéité stricte, stockage compact, opérations vectorisées.

Concrètement :

  • Une liste Python stocke des références vers des objets éparpillés en mémoire.
  • Un ndarray stocke les valeurs directement, côte à côte, dans un bloc mémoire continu.

Résultat : NumPy est souvent 10 à 100 fois plus rapide pour les opérations numériques en masse. Sur un dataset de 10 millions de lignes, ça change tout.

Les domaines où NumPy est incontournable

NumPy s'invite dans beaucoup de disciplines :

  • Data science : préparation et transformation des données avant analyse
  • Machine learning : représentation des features, poids de réseaux de neurones, matrices de confusion
  • Traitement d'images : une image couleur n'est qu'un tableau 3D de pixels (hauteur × largeur × canaux RGB)
  • Simulation physique : calculs vectoriels sur des milliers de points simultanément
  • Finance : séries temporelles, corrélations, calcul de portefeuilles

La relation de NumPy avec Pandas et Matplotlib

Pandas s'appuie sur NumPy pour stocker ses colonnes. Quand vous extrayez une colonne d'un DataFrame Pandas, vous obtenez souvent un objet qui ressemble beaucoup à un ndarray. Voir la page Tutoriel Pandas pour les détails.

Matplotlib attend des données sous forme de tableaux NumPy pour tracer ses graphiques. Les deux bibliothèques fonctionnent main dans la main. Voir la page Matplotlib Démarrer pour la visualisation.

Ce que vous allez apprendre dans ce tutoriel

Ce cours couvre NumPy de zéro jusqu'aux techniques avancées :

  📋 Copier le code

# Vérifier que NumPy est bien installé et voir sa version
import numpy as np
print(np.__version__)  # ex : 1.26.4 ou 2.x.x

# Créer un premier tableau 2D (matrice 3×3)
matrice = np.array([
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
])

print(matrice.shape)   # (3, 3) → 3 lignes, 3 colonnes
print(matrice.dtype)   # int64 → entiers 64 bits par défaut
print(matrice.sum())   # 45 → somme de tous les éléments
  

Avant d'aller plus loin, commencez par la page suivante pour installer NumPy proprement dans votre environnement Python.

Par carabde | Mis à jour le 28 avril 2026