Aller au contenu
Moncoachdata
  • Accueil
  • Blog
  • Tutos
  • Coaching
  • Programme Data
Connexion
Moncoachdata

Maîtriser NumPy : Le compagnon indispensable pour les Data Lovers

  • Principes de base des tableaux Numpy
  • Inspection de tableaux array de NumPy
  • Opérations sur les tableaux NumPy
  • Travailler avec des tableaux Numpy
  • NumPy pour le nettoyage de données
  • NumPy pour l’analyse statistique
  • NumPy pour l’algèbre linéaire
  • Techniques avancées pour NumPy
  • Optimisation des performances avec NumPy

Pandas : Un manuel complet pour les Data Lovers

  • Structures de données Pandas
  • Chargement et inspection des données dans Pandas
  • Sélection et indexation des données avec Pandas
  • Nettoyage de données avec Pandas
  • Manipulation de données avec Pandas
  • Agrégations de données avec Pandas
  • Visualisations de données avec Pandas
  • Traitement des données de séries temporelles avec Pandas
  • Traitement des données catégorielles avec Pandas
  • Pandas : Sujets avancés

Maîtriser Matplotlib : Un guide complet pour la visualisation de données

  • Tracé de base Matplotlib
  • Types de diagrammes Matplotlib
  • Multiples subplots Matplotlib
  • Matplotlib : Fonctionnalités avancées

Maîtriser Seaborn : Démystifier les diagrammes complexes

  • Introduction Seaborn
  • Diagrammes catégoriels avec Seaborn
  • Diagrammes univariés avec Seaborn
  • Diagrammes bivariés avec Seaborn
  • Diagrammes multivariés avec Seaborn
  • Diagrammes matriciels avec Seaborn

Maîtriser Plotly : Laisse tes visualisations parler à travers Plotly

  • Modules importants de Plotly
  • Diagrammes de base avec Plotly
  • Plotly : diagrammes avancés

Machine Learning : Explorer ses nombreuses formes

  • Comment fonctionne le Machine Learning ?
  • Apprentissage automatique supervisé
  • Apprentissage Automatique non Supervisé
  • Apprentissage semi-supervisé
  • Apprentissage par renforcement
View Categories

Opérations sur les tableaux NumPy

Opérations par élément #

Les opérations par élément appliquent une opération donnée à chaque élément du tableau indépendamment. Tu peux effectuer des additions, des soustractions, et même des multiplications et des divisions sur les tableaux.

Broadcasting : NumPy permet d’effectuer des opérations entre des tableaux de formes (shape) et de tailles différentes, ce que l’on appelle le broadcasting (ou diffusion en français). Le broadcasting ajuste automatiquement la forme du plus petit tableau pour qu’elle corresponde à celle du plus grand, ce qui la rend compatible avec les opérations par éléments.

# Création de tableaux NumPy 1D
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
scalaire = 2

# Addition
result_add = arr1 + arr2   # [5, 7, 9]

# Multiplication, de même que soustraction et division.
result_mul = arr1 * arr2   # [4, 10, 18]

# Création de tableaux NumPy 2D
matrix1 = np.array([[1, 2], [3, 4]])
matrix2 = np.array([[5, 6], [7, 8]])

# Multiplication (par éléments, pas par matrice)
result_mul = matrix1 * matrix2   # [[5, 12], [21, 32]]

# Multiplication matricielle réelle à l'aide de np.dot
matrix_multiplication = np.dot(matrix1,matrix2)

# Broadcasting : Multiplier un tableau par un scalaire
result = arr1 * scalaire   # [2, 4, 6]

Ajouter et supprimer des éléments #

Pour ajouter des tableaux dans NumPy, tu peux utiliser la fonction numpy.append(). Cette fonction te permet d’ajouter des éléments à la fin d’un tableau existant le long d’un axe spécifié.

Garde à l’esprit que np.append() renvoie un nouveau tableau avec les éléments ajoutés ; elle ne modifie donc pas les tableaux d’origine. Si tu souhaites modifier un tableau existant (à la place), tu peux utiliser des méthodes telles que np.concatenate() ou utiliser des instructions d’affectation.

Nous pouvons utiliser np.delete pour supprimer les éléments d’un tableau.

# Créer un tableau
original_array = np.array([1, 2, 3])

# Ajouter des éléments à la place
original_array = np.append(original_array, [4, 5, 6])

# Créer un tableau NumPy
arr = np.array([1, 2, 3, 4, 5])

# Supprimer l'élément à l'index 2 (valeur 3)
new_arr = np.delete(arr, 2)

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

# Supprimer la deuxième ligne (index 1)
new_arr = np.delete(arr, 1, axis=0)

Fonctions d’agrégation et ufuncs #

NumPy fournit des fonctions intégrées pour les opérations d’agrégation courantes sur les tableaux, notamment la moyenne, la somme, le minimum, le maximum, etc. NumPy fournit également des fonctions universelles (ufuncs) qui opèrent par élément sur les tableaux, y compris des fonctions mathématiques, trigonométriques et exponentielles.

# Création d'un tableau NumPy
arr = np.array([1, 2, 3, 4, 5])

# Fonctions d'agrégation
mean_value = np.mean(arr)   # Moyenne : 3.0
median_value = np.median(arr)   # Médiane : 3.0
variance = np.var(arr)   # Variance 2.0
standard_deviation = np.std(arr)   # std : 1.414

sum_value = np.sum(arr)   # Somme : 15
min_value = np.min(arr)   # Minimum : 1
max_value = np.max(arr)   # Maximum : 5


# Fonctions universelles
sqrt_arr = np.sqrt(arr)   # Racine carrée
exp_arr = np.exp(arr)   # Exponentielle

Remodelage des tableaux #

Tu peux modifier la forme d’un tableau sans modifier ses données à l’aide de la méthode reshape, par exemple pour aplatir un tableau (le convertir en un tableau 1D) ou pour le transformer en un tableau de dimension supérieure (par exemple, de 1D à 2D ou de 2D à 3D).

La méthode reshape peut s’avérer particulièrement utile lorsque tu dois préparer des données pour diverses opérations, telles que la multiplication de matrices, la convolution ou l’affichage d’images.

La méthode reshape permet de transmettre la forme du résultat attendu. Le nombre total d’éléments du tableau d’origine doit correspondre au nombre total d’éléments de la nouvelle forme. En d’autres termes, le produit des dimensions de la nouvelle forme doit être égal au nombre total d’éléments du tableau d’origine. NumPy lèvera une erreur si cette condition n’est pas remplie.

import numpy as np

# Création d'un tableau 2D
arr_2d = np.array([[1, 2, 3], [4, 5, 6]])

# Ici, comme nous ne passons que 6 éléments, le tableau 2d sera converti en tableau 1d.
# avec 6 éléments, tu ne peux pas passer autre chose que 6,
# car cela ne correspond pas au tableau d'origine !
arr_1d = arr_2d.reshape(6)

# Création d'un tableau 1D
arr_1d = np.array([1, 2, 3, 4, 5, 6])

# Conversion d'un tableau 1D en 2D
arr_2d = arr_1d.reshape(2, 3)

Comprendre comment utiliser -1 : Pour faire simple, tu peux utiliser -1 comme placeholder dans n’importe quelle dimension de la nouvelle forme, et NumPy calculera automatiquement la taille pour cette dimension.

from skimage import data

# Chargement d'un échantillon d'image en niveaux de gris
image = data.coins()

# Forme originale de l'image
print("Forme originale de l'image :", image.shape) # Forme originale de l'image : (303, 384)

# Donc, si vous voulez la convertir en 1D, vous devez passer 116352 (303*384)
# Au lieu de cela, si vous ne voulez pas calculer cela et laisser numpy s'en occuper, # dans ce cas, vous pouvez simplement passer 116352 à numpy,
# dans ce cas, vous pouvez simplement passer -1, et il calculera 116352
reshaped_image = image.reshape(-1) 

# Création d'un tableau 1D avec 12 éléments
arr = np.arange(12)

# Remodelage/reshaping en un tableau 2D avec un nombre inconnu de colonnes (-1)
reshaped_arr = arr.reshape(4, -1)
Numpy Guide Indispensable
T'en as pensé quoi ?
Partager ce tuto :
  • Facebook
  • X
  • LinkedIn
Inspection de tableaux array de NumPyTravailler avec des tableaux Numpy
Table des matières
  • Opérations par élément
  • Ajouter et supprimer des éléments
  • Fonctions d'agrégation et ufuncs
  • Remodelage des tableaux

Apprentissage

  • Cours accéléré NumPy
  • Nos programmes Data
  • TOP 50 fonctions NumPy
  • MasterClass DS & ML
  • MasterClass Deep Learning
  • Mon Shot de Data Science
  • Tutoriels Data Science

Le site

  • Articles
  • Coaching
  • Communauté
  • Newsletter
  • Connexion

À propos

  • CGV
  • Contact
Payment Options
Reçois chaque semaine mes meilleures pratiques en Data Science :

© 2025 MonCoachData - Data Science & Machine Learning

YouTube Discord GitHub Linkedin RSS
Défiler vers le haut
  • Accueil
  • Blog
  • Tutos
  • Coaching
  • Programme Data
Connexion
Discord DiscordYouTube YouTube
Rechercher