Maison >développement back-end >Tutoriel Python >Comment calculer la trace d'une matrice en Python en utilisant numpy ?
Calculer la trace d'une matrice à l'aide de Numpy est une opération courante en algèbre linéaire et peut être utilisée pour extraire des informations importantes sur la matrice. La trace d'une matrice est définie comme la somme des éléments sur la diagonale principale de la matrice, qui s'étend du coin supérieur gauche au coin inférieur droit. Dans cet article, nous allons apprendre différentes manières de calculer la trace d'une matrice à l'aide de la bibliothèque NumPy en Python.
Avant de commencer, nous importons d'abord la bibliothèque NumPy -
import numpy as np
Ensuite, définissons une matrice à l'aide de la fonction np.array -
A = np.array([[1,2,3], [4,5,6], [7,8,9]])
Pour calculer la trace de cette matrice, on peut utiliser la fonction np.trace dans NumPy
import numpy as np A = np.array([[1,2,3], [4,5,6], [7,8,9]]) trace = np.trace(A) print(trace)
15La fonction
np.trace prend un seul argument, qui est la matrice dont nous voulons calculer la trace. Il renvoie la trace de la matrice sous forme de valeur scalaire.
Alternativement, on peut également utiliser la fonction somme pour calculer la trace de la matrice et indexer les éléments sur la diagonale principale -
import numpy as np A = np.array([[1,2,3], [4,5,6], [7,8,9]]) trace = sum(A[i][i] for i in range(A.shape[0])) print(trace)
15
Ici, nous utilisons la propriété shape de la matrice pour déterminer ses dimensions et utilisons une boucle for pour parcourir les éléments de la diagonale principale.
Il est à noter que la trace d'une matrice n'est définie que pour une matrice carrée, c'est-à-dire une matrice ayant le même nombre de lignes et de colonnes. Si vous essayez de calculer la trace d’une matrice non carrée, vous obtiendrez une erreur.
En plus de calculer la trace d'une matrice, NumPy fournit également plusieurs autres fonctions et méthodes pour effectuer diverses opérations d'algèbre linéaire, telles que le calcul du déterminant, de l'inverse, des valeurs propres et des vecteurs propres d'une matrice. Voici une liste de certaines des fonctions d'algèbre linéaire les plus utiles fournies par NumPy -
np.linalg.det - Calculer le déterminant d'une matrice
np.linalg.inv - Calcule l'inverse d'une matrice.
np.linalg.eig - Calculer les valeurs propres et les vecteurs propres d'une matrice.
np.linalg.solve - Résoudre un système d'équations linéaires représenté par une matrice
np.linalg.lstsq - Résoudre les problèmes des moindres carrés linéaires.
np.linalg.cholesky - Calculez la décomposition de Cholesky d'une matrice.
Pour utiliser ces fonctions, vous devez importer le sous-module linalg de NumPy−
import numpy.linalg as LA
Par exemple, pour calculer le déterminant d'une matrice à l'aide de NumPy, vous pouvez utiliser le code suivant -
import numpy as np import numpy.linalg as LA A = np.array([[1,2,3], [4,5,6], [7,8,9]]) det = LA.det(A) print(det)
0.0
Les fonctions d'algèbre linéaire de NumPy sont optimisées pour les performances, ce qui les rend idéales pour les tables d'interface utilisateur pour les applications informatiques scientifiques et mathématiques à grande échelle. En plus de fournir une large gamme de fonctions d'algèbre linéaire, NumPy fournit également plusieurs fonctions pratiques pour créer et manipuler des matrices et des n-tableaux, telles que np.zeros, np.ones, np.eye et np.diag.
Voici un exemple de création d'une matrice de zéros à l'aide de la fonction np.zeros -
import numpy as np A = np.zeros((3,3)) # Creates a 3x3 matrix of zeros print(A)
Cela affichera la matrice suivante
[[0. 0. 0.] [0. 0. 0.] [0. 0. 0.]]
De même, la fonction np.ones peut créer une matrice 1 et la fonction np.eye peut créer une matrice d'identité. Par exemple -
import numpy as np A = np.ones((3,3)) # Creates a 3x3 matrix of ones B = np.eye(3) # Creates a 3x3 identity matrix print(A) print(B)
Cela affichera la matrice suivante.
[[1. 1. 1.] [1. 1. 1.] [1. 1. 1.]] [[1. 0. 0.] [0. 1. 0.] [0. 0. 1.]]
Enfin, la fonction np.diag peut créer une matrice diagonale à partir d'une liste ou d'un tableau donné. Par exemple -
import numpy as np A = np.diag([1,2,3]) # Creates a diagonal matrix from the given list print(A)
Cela affichera la matrice suivante.
[[1 0 0] [0 2 0] [0 0 3]]
En résumé, NumPy est une puissante bibliothèque Python pour effectuer des opérations d'algèbre linéaire. Sa large gamme de fonctions et de méthodes en font un outil essentiel pour les calculs scientifiques et mathématiques, et ses performances optimisées le rendent adapté aux applications à grande échelle. Que vous ayez besoin de calculer la trace d'une matrice, de trouver l'inverse d'une matrice ou de résoudre un système d'équations linéaires, NumPy fournit les outils dont vous avez besoin pour faire le travail.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!