Tableaux Numpy
Chargement de Numpy
>>> import numpy as np
Le paquet
numpy
est habituellement importé avec l'aliasnp
qui est plus rapide à écrire à chaque fois !
Créer des tableaux Numpy
A partir d'une liste avec array()
>>> a = np.array([1, 2, 3, 4])
>>> a
array([1, 2, 3, 4])
>>> print(a)
[1 2 3 4]
Il est possible de créer un tableau (ici à 1 dimension) à partir d'une liste.
A partir d'un intervalle et d'un nombre d'éléments avec linspace()
>>> a = np.linspace(1, 7, 3)
>>> a
array([1., 4., 7.])
La fonction
linspace(start,end, nb)
génèren
valeurs entrestart
etend
.
A partir d'un intervalle et d'un pas avec arange()
>>> a = np.arange(1, 2, 0.2)
>>> print(a)
[1. 1.2 1.4 1.6 1.8]
La fonction
arange(a,b,p)
construit un tableau Numpy dea
àb
(non compris) avec un pas dep
.
A partir de zéros avec zeros()
Il est parfois intéressant de créer un tableau de zéros dont les valeurs pourront être modifiées par la suite.
>>> a = np.zeros(5)
>>> print(a)
[0. 0. 0. 0. 0.]
Manipulation des tableaux Numpy
>>> a = np.array([1, 2, 3, 4])
>>> a*3
array([ 3, 6, 9, 12])
>>> a**2
array([ 1, 4, 9, 16])
Les opérations mathématiques s'appliquent itérativement sur les tableaux de type Numpy.
>>> l = [1, 2, 3, 4]
>>> l*3
[1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]
Ce n'est pas le cas avec les listes !
>>> a = np.array( )
>>> b = np.array([5, 6, 3, 8])
>>> 3*a + b
array([ 8, 12, 12, 20])
>>> a == b
array([False, False, True, False])
La plupart des opérateurs sont disponibles avec les tableaux Numpy !
Fonctions et tableaux Numpy
>>> a = np.array( )
>>> import math
>>> math.sqrt(a)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: only size-1 arrays can be converted to Python scalars
Par contre, il n'est pas possible d'appliquer les fonctions mathématiques du module
math
.
>>> np.sqrt(a)
array([1. , 1.41421356, 1.73205081, 2. ])
>>> np.exp(a)
array([ 2.71828183, 7.3890561 , 20.08553692, 54.59815003])
Mais heureusement le paquet Numpy intégre ses propres fonctions mathématiques.