Chapitre 3 Opérations Matricielles
Chapitre 3 Opérations Matricielles
Chapitre 3 Opérations Matricielles
1. La bibliothèque numpy
• Afin de manipuler des matrices, la bibliothèque numpy est requise
• Numpy est un package pour Python spécialisé dans la manipulation des tableaux (arrays). Dans
cette bibliothèque, un tableau ne gère que les objets de même type.
• Numpy doit être appelée afin de pouvoir l’utiliser :
import numpy as np
Exemple :
import numpy as np
mat = np.array ([[1,0,4,8],[9,3,2,2],[5,10,-2,-5]])
print(mat) [[ 1 0 4 8]
[ 9 3 2 2]
[ 5 10 -2 -5]]
print(mat.shape) (3, 4)
Programmation Python 27
ISAMM 1ère IM
Exemples :
5. Matrices particulières
a) La fonction zeros
• Les fonctions np.zeros() permet de créer une matrice remplie de zéros.
a=np.zeros(3,2)
print(a) [[0. 0.]
[0. 0.]
[0. 0.]]
b) La fonction ones
• La fonction np.ones() permet de créer une matrice remplie de 1.
b=np.ones((1,4))
print(b) [[1. 1. 1. 1.]]
c) La fonction eye
• La fonction np.eye() permet de créer une matrice identité.
c=np.eye(3)
print(c) [[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
Programmation Python 28
ISAMM 1ère IM
d) La fonction diag
• La fonction np.diag() permet de créer une matrice diagonale.
d=np.diag((2,5,9))
print(d) [[2 0 0]
[0 5 0]
[0 0 9]]
Programmation Python 29
ISAMM 1ère IM
Exemple :
Programmation Python 30
ISAMM 1ère IM
Exemple :
m= np.array ([(3,0,1),(5,1,2),(7,9,9)])
print(m) [[3 0 1]
[5 1 2]
[7 9 9]]
print(np.linalg.det(m)) 10.999999999999991
print(np.trace (m)) 13
print(np.linalg.matrix_rank(m)) 3
Programmation Python 31
ISAMM 1ère IM
valProp,vectProp=np.linalg.eig(m)
print(valProp) [11.90132087+0.j 0.54933956+0.78898238j
0.54933956-0.78898238j]
print(vectProp) [
[ 0.10871566+0.j 0.2915995 +0.09387954j
0.2915995 -0.09387954j]
[ 0.22740402+0.j 0.51374177-0.14215688j
0.51374177+0.14215688j]
[ 0.96771293+0.j -0.78868066+0.j -
0.78868066-0.j ]
]
Exemple : mx=b
m= np.array ([(3,0,1),(5,1,2),(7,9,9)])
b=array([1,9,5])
x= np.linalg.solve(m,b)
print(x) [6.09090909 13.09090909 -17.27272727]
Programmation Python 32
ISAMM 1ère IM
Exemple :
print(mat) [[ 1 0 4 8]
[ 9 3 2 2]
[ 5 10 -2 -5]]
print(np.sum(mat)) 37
print(np.sum(mat,axis=0)) [15 13 4 5]
print(np.sum(mat,axis=1)) [13 16 8]
l=np.array([[1,3,6,5]])
mat1 = np.append(mat,l,axis=0)
print(mat1) [[ 1 0 4 8]
[9 3 2 2]
[ 5 10 -2 -5]
[1 3 6 5]]
Programmation Python 33
ISAMM 1ère IM
Exemple :
• Ajouter une colonne à la première position.
c=np.array([[0],[0],[0]])
mat1 = np.append(c,mat,axis=1)
print(mat1) [[ 0 1 0 4 8]
[ 0 9 3 2 2]
[ 0 5 10 -2 -5]]
4. Suppression
• La fonction np.delete() nécessite 3 paramètres :
o La matrice concernée ;
o Le numéro de la ligne ou de la colonne à supprimer ;
o Le code de l’élément à supprimer : suppression d’une ligne (axis = 0) ou d’une colonne (axis
= 1).
Exemple :
• Suppression de la 2e colonne :
m1=np.delete(mat,1,axis=1)
print(m1) [[ 1 4 8]
[ 9 2 2]
[ 5 -2 -5]]
Programmation Python 34
ISAMM 1ère IM
m2 = np.resize(mat,new_shape=(3,9))
print(m2) [[ 1 0 4 8 9 3 2 2 5]
[10 -2 -5 1 0 4 8 9 3]
[ 2 2 5 10 -2 -5 1 0 4]]
Fonction Rôle
A.max() Retourne le maximum global des coefficients
A.max(0) Retourne le maximum de chaque colonne sous forme de matrice ligne
A.max(1) Retourne le maximum de chaque ligne sous forme de matrice ligne
A.min() Retourne le minimum global des coefficients
A.min(0) Retourne le minimum de chaque colonne sous forme de matrice ligne
A.min(1) Retourne le minimum de chaque ligne sous forme de matrice ligne
A.sum() Retourne la somme totale des coefficients
A.sum(0) Retourne la somme de chaque colonne sous forme de matrice ligne
A.sum(1) Retourne la somme de chaque ligne sous forme de matrice ligne
A.prod() Retourne le produit total des coefficients
A.prod(0) Retourne le produit de chaque colonne sous forme de matrice ligne
Programmation Python 35
ISAMM 1ère IM
Programmation Python 36