En este artículo, veremos NumPy Inverse Matrix en Python antes de intentar comprender su concepto. La inversa de una matriz es simplemente un recíproco de la matriz como lo hacemos en la aritmética normal para un solo número que se usa para resolver las ecuaciones para encontrar el valor de variables desconocidas. La inversa de una matriz es aquella matriz que al multiplicarse por la matriz original dará una matriz identidad.
La inversa de una matriz existe sólo si la matriz es no singular, es decir, el determinante no debe ser 0 . Usando determinante y adjunto, podemos encontrar fácilmente la inversa de una matriz cuadrada usando la siguiente fórmula,
if det(A) != 0 A-1 = adj(A)/det(A) else 'Inverse doesn't exist'>
Ecuación matricial:
dónde,
A-1: La inversa de la matriz A
X: t la columna de variable desconocida
B: La matriz de solución
Matriz inversa usando NumPy
Python proporciona un método muy sencillo para calcular la inversa de una matriz. La función numpy.linalg.inv() está disponible en el módulo NumPy y se utiliza para calcular la matriz inversa en Python.
Sintaxis: numpy.linalg.inv(a)
Parámetros:
a: Matriz a invertir
Devoluciones: Inversa de la matriz a.
Ejemplo 1: En este ejemplo, crearemos una matriz de matriz NumPy de 3 por 3 y luego la convertiremos en una matriz inversa usando la función np.linalg.inv().
Python3
# Import required package> import> numpy as np> # Taking a 3 * 3 matrix> A> => np.array([[> 6> ,> 1> ,> 1> ],> > [> 4> ,> -> 2> ,> 5> ],> > [> 2> ,> 8> ,> 7> ]])> # Calculating the inverse of the matrix> print> (np.linalg.inv(A))> |
>
>
Producción:
[[ 0.17647059 -0.00326797 -0.02287582] [ 0.05882353 -0.13071895 0.08496732] [-0.11764706 0.1503268 0.05228758]]>
Ejemplo 2: En este ejemplo, crearemos una matriz de matriz NumPy de 4 por 4 y luego la convertiremos usando la función np.linalg.inv() en una matriz inversa en Python.
Python3
# Import required package> import> numpy as np> # Taking a 4 * 4 matrix> A> => np.array([[> 6> ,> 1> ,> 1> ,> 3> ],> > [> 4> ,> -> 2> ,> 5> ,> 1> ],> > [> 2> ,> 8> ,> 7> ,> 6> ],> > [> 3> ,> 1> ,> 9> ,> 7> ]])> # Calculating the inverse of the matrix> print> (np.linalg.inv(A))> |
>
>
Producción:
[[ 0.13368984 0.10695187 0.02139037 -0.09090909] [-0.00229183 0.02673797 0.14820474 -0.12987013] [-0.12987013 0.18181818 0.06493506 -0.02597403] [ 0.11000764 -0.28342246 -0.11382735 0.23376623]]>
Ejemplo 3: En este ejemplo, crearemos múltiples matrices de matriz NumPy y luego las convertiremos en sus matrices inversas usando la función np.linalg.inv().
Python3
# Import required package> import> numpy as np> # Inverses of several matrices can> # be computed at once> A> => np.array([[[> 1.> ,> 2.> ], [> 3.> ,> 4.> ]],> > [[> 1> ,> 3> ], [> 3> ,> 5> ]]])> # Calculating the inverse of the matrix> print> (np.linalg.inv(A))> |
>
>
Producción:
[[[-2. 1. ] [ 1.5 -0.5 ]] [[-1.25 0.75] [ 0.75 -0.25]]]>