Contenu du cours
Numpy Ultime
Numpy Ultime
Fonctions de Création pour les Tableaux 1D
En plus de la création de tableaux de base en spécifiant explicitement les éléments, numpy
permet également la création automatique de tableaux à l'aide de fonctions spéciales. Voici deux des fonctions les plus courantes pour créer des tableaux exclusivement 1D :
arange()
;linspace()
.
arange()
La fonction numpy.arange()
est similaire à la fonction intégrée range()
de Python ; cependant, elle retourne un ndarray
. Essentiellement, elle crée un tableau avec des éléments uniformément espacés dans un intervalle spécifié.
Par exemple, si l'intervalle spécifié est de 0 à 10 avec une taille de pas de 2, le tableau résultant serait : [0, 2, 4, 6, 8]
.
Voici ses trois paramètres les plus importants et leurs rôles :
-
start
:- Valeur par défaut :
0
; - Représente le premier élément du tableau.
- Valeur par défaut :
-
stop
:- Pas de valeur par défaut;
- Définit le point final, qui n'est pas inclus dans le tableau.
-
step
:- Valeur par défaut :
1
; - Spécifie l'incrément ajouté à chaque élément suivant.
- Valeur par défaut :
import numpy as np # Creating an array of integers from 0 to 11 exclusive with step=1 array_1 = np.arange(11) print(array_1) # Creating an array of integers from 1 to 11 exclusive with step=1 array_2 = np.arange(1, 11) print(array_2) # Creating an array of integers from 0 to 11 exclusive with step=2 array_3 = np.arange(0, 11, 2) print(array_3)
linspace()
Bien que arange()
puisse fonctionner avec des nombres réels, numpy.linspace()
est préféré à numpy.arange()
à cette fin car arange()
peut produire des résultats inattendus en raison des erreurs de précision en virgule flottante lors du calcul des pas. En revanche, linspace()
génère un nombre spécifique de points uniformément espacés dans un intervalle, garantissant précision et cohérence.
Avec linspace()
, au lieu du paramètre step
, il y a un paramètre num
utilisé pour spécifier le nombre d'échantillons (nombres) dans un intervalle donné (par défaut, c'est 50
).
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_1 = np.linspace(0, 1, 5) print('Example 1:', array_1) # Generating 7 equally spaced values between -1 and 1 (inclusive) array_2 = np.linspace(-1, 1, 7) print('Example 2:', array_2)
Endpoint
Le paramètre endpoint
détermine si la valeur stop
est incluse. Par défaut, il est True
(inclusif). Le définir sur False
exclut la valeur stop
, réduisant légèrement la taille du pas.
Voici une comparaison de array_inclusive
et array_exclusive
:
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_inclusive = np.linspace(0, 1, 5) print('Endpoint = True:', array_inclusive) # Generating 5 equally spaced values between 0 and 1 (exclusive) array_exclusive = np.linspace(0, 1, 5, endpoint=False) print('Endpoint = False:', array_exclusive)
Lorsque endpoint=True
, l'intervalle [0, 1] est divisé en 4 segments égaux et inclut le point final lui-même (1
), ce qui donne une taille de pas de (1 - 0) / 4 = 0.25.
Lorsque endpoint=False
, l'intervalle [0, 1) est divisé en 5 segments égaux puisque le point final est exclu, ce qui donne une taille de pas de (1 - 0) / 5 = 0.2.
Remarque
Vous pouvez toujours en apprendre davantage sur ces fonctions dans leur documentation : arange, linspace.
Swipe to start coding
- Utilisez la fonction
arange()
pour créer le tableaueven_numbers
. - Spécifiez les arguments pour créer un tableau de nombres pairs de
2
à21
exclus. - Utilisez la fonction appropriée pour créer le tableau
samples
, qui permet de spécifier le nombre de valeurs dans un intervalle donné. - Spécifiez les trois premiers arguments pour créer un tableau de
10
nombres également espacés entre5
et6
. - Assurez-vous que
6
n'est pas inclus dans le tableausamples
.
Solution
Merci pour vos commentaires !
Fonctions de Création pour les Tableaux 1D
En plus de la création de tableaux de base en spécifiant explicitement les éléments, numpy
permet également la création automatique de tableaux à l'aide de fonctions spéciales. Voici deux des fonctions les plus courantes pour créer des tableaux exclusivement 1D :
arange()
;linspace()
.
arange()
La fonction numpy.arange()
est similaire à la fonction intégrée range()
de Python ; cependant, elle retourne un ndarray
. Essentiellement, elle crée un tableau avec des éléments uniformément espacés dans un intervalle spécifié.
Par exemple, si l'intervalle spécifié est de 0 à 10 avec une taille de pas de 2, le tableau résultant serait : [0, 2, 4, 6, 8]
.
Voici ses trois paramètres les plus importants et leurs rôles :
-
start
:- Valeur par défaut :
0
; - Représente le premier élément du tableau.
- Valeur par défaut :
-
stop
:- Pas de valeur par défaut;
- Définit le point final, qui n'est pas inclus dans le tableau.
-
step
:- Valeur par défaut :
1
; - Spécifie l'incrément ajouté à chaque élément suivant.
- Valeur par défaut :
import numpy as np # Creating an array of integers from 0 to 11 exclusive with step=1 array_1 = np.arange(11) print(array_1) # Creating an array of integers from 1 to 11 exclusive with step=1 array_2 = np.arange(1, 11) print(array_2) # Creating an array of integers from 0 to 11 exclusive with step=2 array_3 = np.arange(0, 11, 2) print(array_3)
linspace()
Bien que arange()
puisse fonctionner avec des nombres réels, numpy.linspace()
est préféré à numpy.arange()
à cette fin car arange()
peut produire des résultats inattendus en raison des erreurs de précision en virgule flottante lors du calcul des pas. En revanche, linspace()
génère un nombre spécifique de points uniformément espacés dans un intervalle, garantissant précision et cohérence.
Avec linspace()
, au lieu du paramètre step
, il y a un paramètre num
utilisé pour spécifier le nombre d'échantillons (nombres) dans un intervalle donné (par défaut, c'est 50
).
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_1 = np.linspace(0, 1, 5) print('Example 1:', array_1) # Generating 7 equally spaced values between -1 and 1 (inclusive) array_2 = np.linspace(-1, 1, 7) print('Example 2:', array_2)
Endpoint
Le paramètre endpoint
détermine si la valeur stop
est incluse. Par défaut, il est True
(inclusif). Le définir sur False
exclut la valeur stop
, réduisant légèrement la taille du pas.
Voici une comparaison de array_inclusive
et array_exclusive
:
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_inclusive = np.linspace(0, 1, 5) print('Endpoint = True:', array_inclusive) # Generating 5 equally spaced values between 0 and 1 (exclusive) array_exclusive = np.linspace(0, 1, 5, endpoint=False) print('Endpoint = False:', array_exclusive)
Lorsque endpoint=True
, l'intervalle [0, 1] est divisé en 4 segments égaux et inclut le point final lui-même (1
), ce qui donne une taille de pas de (1 - 0) / 4 = 0.25.
Lorsque endpoint=False
, l'intervalle [0, 1) est divisé en 5 segments égaux puisque le point final est exclu, ce qui donne une taille de pas de (1 - 0) / 5 = 0.2.
Remarque
Vous pouvez toujours en apprendre davantage sur ces fonctions dans leur documentation : arange, linspace.
Swipe to start coding
- Utilisez la fonction
arange()
pour créer le tableaueven_numbers
. - Spécifiez les arguments pour créer un tableau de nombres pairs de
2
à21
exclus. - Utilisez la fonction appropriée pour créer le tableau
samples
, qui permet de spécifier le nombre de valeurs dans un intervalle donné. - Spécifiez les trois premiers arguments pour créer un tableau de
10
nombres également espacés entre5
et6
. - Assurez-vous que
6
n'est pas inclus dans le tableausamples
.
Solution
Merci pour vos commentaires !