NumPy : la différence entre np.linspace et np.arange



Lorsqu’il s’agit de créer une séquence de valeurs, linspace et arange sont deux fonctions NumPy couramment utilisées.

Voici la subtile différence entre les deux fonctions :

  • linspace vous permet de spécifier le nombre d’étapes
  • arange permet de préciser la taille des marches

Les exemples suivants montrent comment utiliser chaque fonction dans la pratique.

Exemple 1 : Comment utiliser np.linspace

La fonction np.linspace() utilise la syntaxe de base suivante :

np.linspace(démarrer, arrêter, num, …)

où:

  • start : La valeur de départ de la séquence
  • stop : La valeur de fin de la séquence
  • num : le nombre de valeurs à générer

Le code suivant montre comment utiliser np.linspace() pour créer 11 valeurs régulièrement espacées entre 0 et 20 :

import numpy as np

#create sequence of 11 evenly spaced values between 0 and 20
np.linspace(0, 20, 11)

array([ 0.,  2.,  4.,  6.,  8., 10., 12., 14., 16., 18., 20.])

Le résultat est un tableau de 11 valeurs régulièrement espacées entre 0 et 20.

En utilisant cette méthode, np.linspace() détermine automatiquement la distance entre les valeurs.

Exemple 2 : Comment utiliser np.arange

La fonction np.arange() utilise la syntaxe de base suivante :

np.arange(démarrer, arrêter, étape, …)

où:

  • start : La valeur de départ de la séquence
  • stop : La valeur de fin de la séquence
  • step : L’espacement entre les valeurs

Le code suivant montre comment utiliser np.arange() pour créer une séquence de valeurs comprises entre 0 et 20 où l’espacement entre chaque valeur est de 2 :

import numpy as np

#create sequence of values between 0 and 20 where spacing is 2
np.arange(0, 20, 2)

array([ 0,  2,  4,  6,  8, 10, 12, 14, 16, 18])

Le résultat est une séquence de valeurs comprises entre 0 et 20 où l’espacement entre chaque valeur est de 2.

En utilisant cette méthode, np.arange() détermine automatiquement le nombre de valeurs à générer.

Si nous utilisons une taille de pas différente (comme 4), alors np.arange() ajustera automatiquement le nombre total de valeurs générées :

import numpy as np

#create sequence of values between 0 and 20 where spacing is 4
np.arange(0, 20, 4)

array([ 0,  4,  8, 12, 16])

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes en Python :

Comment remplir un tableau NumPy avec des valeurs
Comment remplacer des éléments dans un tableau NumPy
Comment compter les valeurs uniques dans le tableau NumPy

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *