Skip to content

Tutoriel sur les tableaux Python NumPy: Création, manipulation et visualisation de tableaux

Updated on

Si vous travaillez avec de grands ensembles de données ou si vous avez besoin d'effectuer des opérations mathématiques complexes, NumPy est un outil essentiel dans votre boîte à outils de science des données. NumPy vous permet de créer et de manipuler efficacement des tableaux multidimensionnels, ce qui en fait une bibliothèque centrale pour le calcul scientifique et l'apprentissage automatique.

Dans ce tutoriel, nous vous montrerons comment commencer avec NumPy en Python. Nous aborderons l'installation, la diffusion, l'indexation, le découpage et la visualisation, avec des conseils pour optimiser les performances et résoudre les erreurs. Allons-y!

Vous souhaitez créer rapidement des visualisations de données en Python?

PyGWalker est un projet Python open source qui peut aider à accélérer le flux de travail d'analyse et de visualisation des données directement dans un environnement basé sur Jupyter Notebook.

PyGWalker (opens in a new tab) transforme votre dataframe Pandas (ou dataframe Polars) en une interface utilisateur visuelle où vous pouvez faire glisser et déposer des variables pour créer facilement des graphiques. Utilisez simplement le code suivant:

pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)

Vous pouvez exécuter PyGWalker dès maintenant avec ces notebooks en ligne:

Et n'oubliez pas de nous donner une ⭐️ sur GitHub!

Exécuter PyGWalker dans Kaggle Notebook (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)Donner une ⭐️ à PyGWalker sur GitHub (opens in a new tab)
Exécuter PyGWalker dans Kaggle Notebook (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)

Que sont NumPy et pourquoi sont-ils importants en science des données?

NumPy est une bibliothèque de calcul numérique en Python. Il fournit des objets de tableau multidimensionnel hautes performances et des outils pour travailler avec ces tableaux. Les tableaux NumPy permettent d'effectuer des opérations mathématiques sur des tableaux entiers en une seule fois, ce qui les rend beaucoup plus rapides que les listes Python traditionnelles.

NumPy est essentiel en science des données car il permet de manipuler efficacement de grands ensembles de données et d'effectuer des opérations numériques. Les tableaux NumPy sont largement utilisés dans les algorithmes d'apprentissage automatique, le traitement d'images et les simulations scientifiques.

Comment installer NumPy sur mon ordinateur?

Avant de commencer avec NumPy, vérifions qu'il est installé sur votre ordinateur. Vous pouvez installer NumPy en utilisant pip, l'outil d'installation de packages pour Python.

pip install numpy

Une fois que NumPy est installé, vous pouvez l'importer dans votre environnement Python en utilisant:

import numpy as np

Opérations sur les tableaux NumPy

Commençons par créer un tableau NumPy. Nous allons créer un tableau bidimensionnel, ou une matrice, rempli de nombres aléatoires en utilisant la fonction numpy.random.rand().

import numpy as np
 
# Créez un tableau 3x3 rempli de nombres aléatoires entre 0 et 1
arr = np.random.rand(3, 3)
 
print(arr)

Cela donnera une sortie similaire à ceci:

array([[0.5488135 , 0.71518937, 0.60276338],
       [0.54488318, 0.4236548 , 0.64589411],
       [0.43758721, 0.891773  , 0.96366276]])

Maintenant que nous avons un tableau NumPy, effectuons quelques opérations dessus. NumPy prend en charge de nombreuses opérations mathématiques, telles que l'addition, la soustraction, la multiplication et la division.

# Ajoutez 10 à chaque élément du tableau
arr = arr + 10
 
# Multipliez chaque élément du tableau par 2
arr = arr * 2
 
# Divisez chaque élément du tableau par 3
arr = arr / 3
 
print(arr)

Cela donnera une sortie similaire à ceci:

array([[6.22202665, 6.61503667, 6.47785626],
       [6.6808859 , 6.49408332, 6.75637531],
       [6.1817823 , 7.63341086, 7.92046462]])

Indexation des tableaux NumPy

L'indexation des tableaux NumPy est similaire à l'indexation des listes Python. Vous pouvez accéder aux éléments d'un tableau en utilisant des crochets et en spécifiant les indices.

import numpy as np
 
# Créez un tableau 2D de nombres de 0 à 15
arr = np.arange(16).reshape((4,4))
 
# Affichez l'ensemble du tableau
print(arr)
 
# Affichez l'élément à la ligne 2, colonne 3
print(arr[2, 3])
 
# Affichez la première ligne du tableau
print(arr[0, :])
 
# Affichez la dernière colonne du tableau
print(arr[:, 3])
 
# Affichez le sous-tableau des lignes 1 à 3 et des colonnes 1 à 3
print(arr[1:4, 1:4])

Cela donnera une sortie similaire à ceci:

array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15]])

11

[0 1 2 3]

[ 3  7 11 15]

[[ 5  6  7]
 [ 9 10 11]
 [13 14 15]]

NumPy vs pandas

NumPy et pandas sont tous deux des bibliothèques essentielles en science des données, mais ils ont des objectifs différents. NumPy est utilisé pour le calcul numérique et la manipulation de tableaux, tandis que pandas est utilisé pour la manipulation et l'analyse de données. NumPy est plus efficace pour les opérations numériques sur les grands tableaux, tandis que pandas excelle dans la manipulation des données tabulaires. NumPy est généralement utilisé pour prétraiter les données avant de les alimenter dans des algorithmes d'apprentissage automatique, tandis que pandas est utilisé pour travailler avec des ensembles de données dans un flux de travail basé sur les données.

Types de données NumPy

Les tableaux NumPy peuvent avoir différents types de données, y compris des entiers, des nombres à virgule flottante et des Booléens. Vous pouvez spécifier le type de données d'un tableau lors de sa création en utilisant le paramètre dtype.

import numpy as np
 
arr_int = np.array([1, 2, 3])   # Tableau d'entiers
arr_float = np.array([1.0, 2.0, 3.0])   # Tableau de nombres à virgule flottante
arr_bool = np.array([True, False, True])   # Tableau de Booléens
 
# Afficher les types de données des tableaux
print(arr_int.dtype)
print(arr_float.dtype)
print(arr_bool.dtype)

Cela affichera :

int64
float64
bool

Diffusion NumPy

La diffusion est une fonctionnalité puissante de NumPy qui permet d'effectuer des opérations mathématiques sur des tableaux de formes différentes. Lorsque vous effectuez des opérations sur deux tableaux, NumPy compare leurs formes élément par élément et diffuse le tableau le plus petit pour correspondre au tableau le plus grand.

import numpy as np
 
# Créer un tableau 3x3 rempli de 1
arr = np.ones((3, 3))
 
# Ajouter 2 à chaque élément du tableau
arr = arr + 2
 
# Multiplier par 3 chaque élément pair du tableau
arr[arr % 2 == 0] *= 3
 
print(arr)

Cela affichera :

array([[ 9.,  3.,  9.],
       [ 3.,  9.,  3.],
       [ 9.,  3.,  9.]])

Comment utiliser les tableaux NumPy dans l'apprentissage automatique

Les tableaux NumPy jouent un rôle essentiel dans les algorithmes d'apprentissage automatique. Les modèles d'apprentissage automatique acceptent des données sous forme de tableaux, et NumPy fournit divers outils pour prétraiter et manipuler ces données.

Par exemple, lors de la manipulation de données d'images, les tableaux NumPy peuvent représenter les pixels d'une image sous la forme d'un tableau multidimensionnel. Ce tableau peut ensuite être utilisé pour entraîner et prédire un modèle d'apprentissage automatique.

NumPy fournit également des fonctions pour diviser les données en sous-ensembles d'entraînement et de test, mettre à l'échelle les données et encoder les variables catégorielles.

Techniques efficaces de manipulation de tableaux NumPy

NumPy propose diverses fonctions et techniques pour la manipulation efficace des tableaux. Voici quelques exemples :

  • Remodelage des tableaux: Utilisez la fonction reshape pour changer la forme d'un tableau afin qu'il corresponde aux exigences d'une opération ou d'un algorithme spécifique.

  • Empilage des tableaux: Utilisez les fonctions hstack, vstack et dstack pour empiler les tableaux horizontalement, verticalement et selon la profondeur.

  • Transposition des tableaux: Utilisez la fonction transpose pour échanger les lignes et les colonnes d'un tableau bidimensionnel.

  • Tri des tableaux: Utilisez la fonction sort pour trier les éléments d'un tableau par ordre croissant ou décroissant.

Conseils pour résoudre les erreurs de tableaux NumPy

Travailler avec des tableaux NumPy peut être difficile, surtout lorsqu'il s'agit de grands ensembles de données. Voici quelques conseils pour résoudre les erreurs courantes liées aux tableaux NumPy :

  • Vérifiez la forme de vos tableaux : Assurez-vous que les tableaux avec lesquels vous travaillez ont la forme correcte pour l'opération que vous effectuez.

  • Castez vos tableaux vers le type de données correct : Assurez-vous que vos tableaux ont le type de données correct pour l'opération mathématique que vous effectuez.

  • Utilisez la diffusion avec sagesse : Bien que la diffusion puisse être puissante, elle peut également conduire à des résultats inattendus. Vérifiez les dimensions diffusées de vos tableaux avant d'effectuer une opération.

  • Vérifiez la présence de valeurs NaN ou Inf : Les valeurs NaN (non un nombre) et Inf peuvent entraîner des erreurs dans les opérations mathématiques. Vérifiez la présence de ces valeurs dans vos tableaux avant d'effectuer une opération.

Conclusion

NumPy est une bibliothèque essentielle en Python pour travailler avec de grands ensembles de données et effectuer des opérations numériques. Dans ce tutoriel, nous avons couvert l'installation, la diffusion, l'indexation, le découpage et la visualisation, avec des conseils pour optimiser les performances et résoudre les erreurs.

N'oubliez pas de garder ces conseils à l'esprit lorsque vous travaillez avec des tableaux NumPy et consultez toujours la documentation en cas de doute. Bon codage!