Dans cet article, nous allons vous montrer comment calculer l'inverse d'une matrice ou d'un ndArray à l'aide de la bibliothèque NumPy en Python.
L'inverse d'une matrice est telle que si elle est multipliée par la matrice d'origine, elle donne la matrice identité.
L'inverse d'une matrice est simplement l'inverse d'une matrice, tout comme en arithmétique régulière, pour un seul nombre utilisé pour résoudre une équation afin d'obtenir la valeur d'une variable inconnue. L'inverse d'une matrice est la matrice qui, multipliée par la matrice d'origine, produit la matrice d'identité.
L'inverse d'une matrice n'existe que lorsque la matrice est non singulière, c'est-à-dire que le déterminant n'est pas 0. On peut simplement trouver l'inverse d'une matrice carrée en utilisant la matrice déterminante et adjointe en utilisant la formule suivante
if det(A) != 0 A-1 = adj(A)/det(A) else "Inverse does not exist"
Python a un moyen très simple de calculer l'inverse d'une matrice. Pour calculer l'inverse d'une matrice, utilisez la fonction numpy.linalg.inv() du module NumPy en Python pour contourner la matrice.
numpy.linalg.inv(array)
array - C'est une matrice qui doit être inversée.
Valeur de retour - La fonction numpy.linalg.inv() renvoie la matrice inverse de la matrice.
Voici les algorithmes/étapes à suivre pour effectuer la tâche requise -
Utilisez le mot-clé import pour importer le module numpy avec un alias (np).
Utilisez la fonction numpy.array() (qui renvoie un ndarray. Un ndarray est un objet tableau qui répond aux exigences données) pour créer un tableau numpy en passant un tableau tridimensionnel (3 lignes, 3 colonnes) comme son argument.
Utilisez la fonction linalg.inv() du module numpy (calculer l'inverse d'une matrice) pour calculer l'inverse d'une matrice d'entrée 3x3 en passant la matrice d'entrée comme argument et imprimer la matrice inverse.
Le programme suivant utilise la fonction numpy.linalg.inv() pour renvoyer l'inverse de la matrice tridimensionnelle (3x3) d'entrée -
# importing numpy module with an alias name import numpy as np # creating a 3-Dimensional(3x3) numpy matrix inputArray_3d = np.array([[4, 5, 1], [3, 4, 12], [10, 2, 1]]) # printing the input 3D matrix print("The input numpy 3D matrix:") print(inputArray_3d) # calculating the inverse of an input 3D matrix resultInverse= np.linalg.inv(inputArray_3d) # printing the resultant inverse of an input matrix print("The Inverse of 3-Dimensional(3x3) numpy matrix:") print(resultInverse)
Une fois exécuté, le programme ci-dessus générera le résultat suivant -
The input numpy 3D matrix: [[ 4 5 1] [ 3 4 12] [10 2 1]] The Inverse of 3-Dimensional(3x3) numpy matrix: [[-0.04246285 -0.00636943 0.11889597] [ 0.24840764 -0.01273885 -0.0955414 ] [-0.07218684 0.08917197 0.00212314]]
Grâce à la fonctionnalité du module scipy, nous pouvons effectuer divers calculs scientifiques. Cela fonctionne également avec les tableaux numpy.
En Python, scipy.linalg.inv() peut également renvoyer la matrice inverse d'une matrice carrée donnée. Cela fonctionne de la même manière que la fonction numpy.linalg.inv().
Voici les algorithmes/étapes à suivre pour effectuer la tâche requise -
Utilisez le mot-clé import pour importer linalg depuis le module scipy.
Utilisez la fonction numpy.matrix() (qui renvoie une matrice à partir d'une chaîne de données ou d'un objet de type tableau. La matrice résultante est un tableau 2D spécialisé) pour créer une matrice numpy en convertissant le tableau 2D (2 lignes, 2 colonnes) lui sont transmises en paramètres.
Utilisez la fonction linalg.inv() du module scipy (calculer l'inverse d'une matrice) pour calculer l'inverse d'une matrice d'entrée 2x2 en passant la matrice d'entrée comme argument et imprimer la matrice inverse.
import numpy as np # importing linalg from scipy module from scipy import linalg # creating a 2-Dimensional(2x2) NumPy matrix inputMatrix = np.matrix([[5, 2],[7, 3]]) # printing the input 2D matrix print("The input numpy 2D matrix:") print(inputMatrix) # calculating the inverse of an input 2D matrix resultInverse = linalg.inv(inputMatrix) # printing the resultant inverse of an input matrix print("The Inverse of 2-Dimensional(2x2) numpy matrix:") print(resultInverse)
The input numpy 2D matrix: [[5 2] [7 3]] The Inverse of 2-Dimensional(2x2) numpy matrix: [[ 3. -2.] [-7. 5.]]
Voici les algorithmes/étapes à suivre pour effectuer la tâche requise -
Utilisez la fonction numpy.matrix() (qui renvoie une matrice à partir d'une chaîne de données ou d'un objet de type tableau. La matrice résultante est un tableau 4D spécialisé) pour créer une matrice numpy en convertissant un tableau à 4 dimensions (4 lignes, 4 colonnes) lui sont transmises en paramètres.
import numpy as np # creating a NumPy matrix (4x4 matrix) using matrix() method inputMatrix = np.matrix('[11, 1, 8, 2; 11, 3, 9 ,1; 1, 2, 3, 4; 9, 8, 7, 6]') # printing the input 4D matrix print("The input NumPy matrix:") print(inputMatrix) # calculating the inverse of an input matrix resultInverse= np.linalg.inv(inputMatrix) # printing the resultant inverse of an input matrix print("The Inverse of 4-Dimensional(4x4) numpy matrix:") print(resultInverse)
The input NumPy matrix: [[11 1 8 2] [11 3 9 1] [ 1 2 3 4] [ 9 8 7 6]] The Inverse of 4-Dimensional(4x4) numpy matrix: [[ 0.25 -0.23214286 -0.24107143 0.11607143] [-0.25 0.16071429 -0.09464286 0.11964286] [-0.25 0.375 0.3125 -0.1875 ] [ 0.25 -0.30357143 0.12321429 0.05178571]]
Dans cet article, nous avons appris à calculer l'inverse d'une matrice à l'aide de trois exemples différents. Nous avons appris comment obtenir des matrices dans Numpy en utilisant deux méthodes différentes : numpy.array() et NumPy.matrix().
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!