NumPy – travail avec les tableaux et les matrices

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

html

Introduction à NumPy : Fondement du calcul scientifique en Python

NumPy est une bibliothèque Python fondamentale pour le calcul scientifique. Elle offre un support puissant pour les tableaux multidimensionnels et les matrices, ainsi qu'un large éventail de fonctions pour les manipuler. NumPy est un outil indispensable pour les analystes de données, les spécialistes de l'apprentissage automatique et les chercheurs scientifiques.

NumPy permet de traiter efficacement de grands volumes de données et d'effectuer des opérations mathématiques, en remplaçant les boucles par un code compact et vectorisé. La bibliothèque inclut des fonctions intégrées pour l'algèbre linéaire et les statistiques.

Installation et importation de la bibliothèque NumPy

Pour commencer à travailler avec NumPy, vous devez l'installer et l'importer dans votre projet.

Installation de NumPy

L'installation de la bibliothèque s'effectue à l'aide de

Traitement des valeurs manquantes (NaN)

Pour travailler avec des valeurs manquantes, NumPy utilise np.nan.

arr = np.array([1, 2, np.nan, 4, 5])
print(np.isnan(arr)) # [False False  True False False]

Pour le traitement des NaN, on utilise des fonctions spéciales telles que nanmean(), nanstd(), nansum(), qui ignorent les valeurs manquantes.

Performance de NumPy contre Python pur

NumPy est écrit en C et fonctionne considérablement plus rapidement que Python pur, en particulier lors de l'exécution d'opérations sur de grands tableaux. Cela est dû à une vectorisation et une optimisation efficaces.

import time
import numpy as np

size = 100000

# Python list
lista = list(range(size))
listb = list(range(size))

starttime = time.time()
resultpython = [a + b for a, b in zip(lista, listb)]
pythontime = time.time() - starttime

# NumPy array
anp = np.arange(size)
bnp = np.arange(size)

starttime = time.time()
resultnumpy = anp + bnp
numpytime = time.time() - starttime

print(f"Python time: {pythontime:.4f} seconds")
print(f"NumPy time: {numpytime:.4f} seconds")

La différence de performance peut atteindre des dizaines et des centaines de fois sur de grands volumes de données.

Cas d'usage réels de NumPy

NumPy est utilisé dans divers domaines :

  • Sciences : traitement de données expérimentales
  • Finance : analyse de séries temporelles
  • Apprentissage automatique : préparation et normalisation des données, modélisation
  • Infographie : travail avec des images
  • Éducation : visualisation de fonctions mathématiques et d'algorithmes

Foire aux questions (FAQ)

En quoi un tableau NumPy diffère-t-il d'une liste Python ?

Un tableau NumPy est une structure de données qui stocke des nombres sous forme de tableaux (tenseurs), a un type de données fixe et prend en charge les opérations vectorisées. Une liste Python est plus flexible, mais moins efficace pour les calculs numériques.

Comment créer une matrice nulle de taille 3x3 ?

matrix = np.zeros((3, 3))

Comment transposer une matrice ?

transposedmatrix = matrix.T

Comment multiplier des matrices ?

result = matrix1 @ matrix2

Comment trouver la matrice inverse ?

inversedmatrix = np.linalg.inv(matrix)

Catégories principales de fonctions NumPy

NumPy fournit un large ensemble de fonctions pour diverses tâches :

  • Création de tableaux : NumPy propose de nombreuses fonctions pour créer et initialiser des tableaux avec différentes valeurs initiales (zéros, uns, nombres aléatoires, etc.).
  • Opérations mathématiques : La bibliothèque prend en charge de nombreuses opérations mathématiques sur les tableaux, y compris les opérations arithmétiques, les fonctions statistiques et les fonctions d'algèbre linéaire.
  • Fonctions d'algèbre linéaire : NumPy fournit des fonctions pour effectuer des opérations d'algèbre linéaire, telles que la multiplication de matrices, le calcul de valeurs propres, etc.
  • Fonctions trigonométriques et logarithmiques : La bibliothèque propose des fonc

Recommendations