🎓 Leçon 7 — Les opérations vectorisées de Numpy et mathématiques avancées
| |

🎓 Leçon 7 — Les opérations vectorisées de Numpy et mathématiques avancées

Spread the love

Si tu pensais que NumPy était puissant jusque-là…
Prépare-toi : les opérations vectorisées de NumPy vont te montrer ce que “performance” veut réellement dire.

Dans la leçon précédente, tu as appris à manier :

  • l’indexation,
  • le slicing,
  • les filtres,
  • les tableaux multidimensionnels.

Maintenant, on passe à ce que les data scientists utilisent toute la journée :
➡️ des opérations vectorisées de NumPy ultra rapides,
➡️ des fonctions mathématiques avancées,
➡️ des transformations complexes en une seule ligne.

C’est cette compétence qui permet à Jack (tu vas le rencontrer dans quelques secondes) de facturer 80€/h en Belgique juste pour “accélérer des scripts Python”.

L’histoire inspirante : Comment Jack (Belgique) a changé de vie grâce aux opérations vectorisées de NumPy

Jack vivait à Liège, coincé dans un petit job où il passait ses journées à faire des calculs Excel.
Puis un jour, il entend parler de Python et NumPy.

Il découvre les opérations vectorisées de NumPy.

Il remplace 2 000 lignes Excel par :

prix_ttc = prix_ht * 1.21

Son boss regarde la ligne, et dit :

“C’est tout ? Tu plaisantes ?”

Jack sourit.
Son script passe de 43 secondes à… 0.05 seconde.

Aujourd’hui Jack conseille des entreprises e-commerce, fait de l’analyse statistique, et vit tranquillement en travaillant moins.

Moralité :
➡️ Maîtriser les opérations vectorisées de NumPy, c’est littéralement changer ton futur.

PARTIE 1 — Comprendre La magie : qu’est-ce qu’une opération vectorisée ?

Une opération vectorisée de NumPy, c’est une opération appliquée à tout un tableau sans boucle.

Exemple classique :

import numpy as np

a = np.array([1, 2, 3, 4])
b = a * 10

En Python natif, tu aurais fait :

b = []
for x in a:
    b.append(x * 10)

Ici, une seule ligne.

🎯 Avantages :

  • 30 à 200 fois plus rapide
  • Aucun “for”
  • Code propre
  • Compatible GPU/optimisation low-level
  • Facile à maintenir

C’est pour ça qu’on parle tout le temps des opérations vectorisées de NumPy.

PARTIE 2 — Opérations mathématiques vectorisées (les bases)

Voici les opérations vectorisées de NumPy que tu vas utiliser en continu :

Addition

a + b

Multiplication

a * 10

Division

a / 3

Puissance

a ** 2

Pourquoi c’est aussi rapide ?

Parce que NumPy utilise des implémentations C ultra optimisées.
Chaque opération vectorisée de NumPy est exécutée en bloc, sans boucle Python lente.

PARTIE 3 — Les ufuncs : le cœur des opérations vectorisées de NumPy

Les ufuncs (Universal Functions) sont des fonctions mathématiques optimisées.

Quelques incontournables :

  • np.sqrt(a) → racine carrée
  • np.sin(a) → sinus
  • np.exp(a) → exponentielle
  • np.log(a) → logarithme naturel

Exemple :

x = np.linspace(0, 10, 100)
y = np.sin(x)

100 points → 1 seul calcul vectorisé.

Sans NumPy : 100 appels Python lents.
Avec NumPy : 1 seul appel optimisé.

PARTIE 4 — Broadcasting : l’intelligence automatique que Python n’a pas

Le broadcasting permet de combiner des tableaux de tailles différentes.

Exemple simple :

m = np.ones((3,3))
b = m + 10

Le 10 se “propage” dans toute la matrice.

Exemple plus avancé (ligne + colonne)

col = np.array([[1],[2],[3]])
row = np.array([10,20,30])

col + row

Résultat :

[[11 21 31]
 [12 22 32]
 [13 23 33]]

Les opérations vectorisées de NumPy + broadcasting =
les outils des pros du Machine Learning.

PARTIE 5 — Statistiques avancées (calculées de manière vectorisée)

NumPy propose des fonctions ultra rapides :

a.mean()
a.std()
a.var()
a.min()
a.max()
np.percentile(a, 90)

Toutes ces fonctions utilisent des opérations vectorisées de NumPy internes.

PARTIE 6 — Cas pratiques

Exemple 1 — Normalisation (Machine Learning)

Normaliser un tableau :

norm = (a - a.min()) / (a.max() - a.min())

➡️ Une seule ligne vectorisée.
➡️ Indispensable en ML.

Exemple 2 — Analyse e-commerce

prix_ht = np.array([12.5, 19.9, 5.99])
prix_ttc = prix_ht * 1.21

Une opération vectorisée NumPy → calcul instantané pour 50 000 produits.

Exemple 3 — Analyse climatique

temperature_c = np.random.normal(15, 4, 365)
temperature_f = temperature_c * 1.8 + 32

Tu viens de convertir toute une année en Fahrenheit…
En un seul calcul.

Exemple 4 — SIG : calcul d’un NDVI

ndvi = (nir - red) / (nir + red)

Littéralement l’essence du traitement d’image satellite.
Une seule opération vectorisée NumPy pour 500 millions de pixels.

PARTIE 7 — Tableau récapitulatif

FonctionDescriptionExemple
Opérations arithmétiquesCalcul sur tout le tableaua * 10
ufuncsOpérations mathématiques optimiséesnp.sqrt(a)
BroadcastingCombinaison automatique des shapesa + 10
StatistiquesMoyenne, variance, percentilesa.mean()
NormalisationMise à l’échelle ML(a-a.min())/(a.max())

PARTIE 8 — Exercices pratiques + solutions

📝 Exercice 1 — Normalisation vectorisée

Créer un tableau de 1 à 1000 et normalise-le.

Solution :

a = np.arange(1,1001)
norm = (a - a.min()) / (a.max() - a.min())

Exercice 2 — Calculer un NDVI

Solution :

red = np.random.rand(300,300)
nir = np.random.rand(300,300)
ndvi = (nir - red) / (nir + red)

Exercice 3 — Conversion devises

Solution :

prix = np.array([10,20,30])
eur_to_usd = 1.07
res = prix * eur_to_usd

QCM

1️⃣ Les opérations vectorisées de NumPy permettent :
✔ d’éviter les boucles Python

2️⃣ Quelle fonction applique une racine carrée vectorisée ?
np.sqrt()

3️⃣ Le broadcasting permet de :
✔ combiner des shapes différents automatiquement

4️⃣ Quel code normalise un tableau ?
(a-a.min())/(a.max()-a.min())

5️⃣ Quelle fonction calcule la variance ?
a.var()

6️⃣ Le NDVI s’écrit :
(nir-red)/(nir+red)

Conclusion

Félicitations 🎉 !
Tu viens de maîtriser un des modules les plus importants : les opérations vectorisées de NumPy.

C’est grâce à elles que :

  • les modèles de Machine Learning tournent vite,
  • les analyses e-commerce deviennent instantanées,
  • les images satellites sont traitées en quelques secondes,
  • et que Jack, en Belgique, gagne mieux sa vie qu’avant.

Tu es maintenant prêt pour la suite logique :
➡️ Leçon 8 — Reshape, concaténation et fusion de tableaux
(où tu vas apprendre à transformer tes arrays comme un chef Sushi transforme un saumon 🐟)

Parfait 😍
Voici 3 autres produits Amazon ultra pertinents pour ton audience (Python, data science, programmation) + une section conclusion complète que tu peux coller directement dans ton article.

🎁 Bonus : Les meilleurs outils pour booster ton apprentissage Python & NumPy

Pour aller encore plus loin dans ton parcours Python, voici une sélection de ressources idéales pour les étudiants, développeurs débutants ou freelances data.

1. Le livre incontournable : Python for Data Analysis

➡️ Le best-seller mondial écrit par le créateur de Pandas, parfait pour maîtriser NumPy, les dataframes, les statistiques et les flux de données professionnels.
👉 Lien Amazon : https://amzn.to/4ox009b

2. Clavier mécanique spécial développeurs

Si tu codes pendant des heures, un bon clavier change tout.
➡️ Recommandation : Keychron K2 Version 2 – Clavier mécanique compact, idéal pour coder vite et confortablement.
👉https://amzn.to/4rgchBj

3. Casque anti-bruit pour coder à 200% de concentration

Parce qu’un bon focus = un meilleur développeur. 👉 https://amzn.to/3LXswmD

Cet article contient des liens d’affiliation Amazon. En tant que partenaire Amazon, je perçois une petite commission si tu achètes via ces liens, sans coût supplémentaire pour toi. Merci de soutenir mon travail ❤️.

Similar Posts