logo

Come invertire una matrice usando NumPy

In questo articolo, vedremo NumPy Inverse Matrix in Python prima di provare a comprenderne il concetto. L'inverso di una matrice è semplicemente un reciproco della matrice come facciamo nell'aritmetica normale per un singolo numero che viene utilizzato per risolvere le equazioni per trovare il valore delle variabili sconosciute. L'inverso di una matrice è quella matrice che moltiplicata per la matrice originale darà una matrice identità.

L'inverso di una matrice esiste solo se la matrice lo è non singolare, ovvero il determinante non dovrebbe essere 0 . Usando determinante e aggiunto, possiamo facilmente trovare l'inverso di una matrice quadrata usando la formula seguente,



if det(A) != 0 A-1 = adj(A)/det(A) else 'Inverse doesn't exist'>

Equazione della matrice:

differenza tra leone e tigre

=>Ascia = B =>A^{-1}Ascia = A^{-1}B =>x = A^{-1}B

Dove,



UN-1: L'inverso della matrice A

X: T la colonna della variabile sconosciuta

B: La matrice della soluzione



Matrice inversa utilizzando NumPy

Python fornisce un metodo molto semplice per calcolare l'inverso di una matrice. La funzione numpy.linalg.inv() è disponibile nel modulo NumPy e viene utilizzato per calcolare la matrice inversa in Python.

Sintassi: numpy.linalg.inv(a)

parametri:

    a: Matrice da invertire

Ritorna: Inversa della matrice a.

Esempio 1: In questo esempio, creeremo una matrice di array NumPy 3 per 3 e quindi la convertiremo in una matrice inversa utilizzando la funzione 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))>
>
>

Produzione:

[[ 0.17647059 -0.00326797 -0.02287582] [ 0.05882353 -0.13071895 0.08496732] [-0.11764706 0.1503268 0.05228758]]>

Esempio 2: In questo esempio, creeremo una matrice di array NumPy 4 per 4 e quindi la convertiremo utilizzando la funzione np.linalg.inv() in una matrice inversa in 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))>
>
>

Produzione:

[[ 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]]>

Esempio 3: In questo esempio, creeremo più matrici di array NumPy e poi le convertiremo nelle rispettive matrici inverse utilizzando la funzione 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))>
>
>

Produzione:

la stringa contiene Java
[[[-2. 1. ] [ 1.5 -0.5 ]] [[-1.25 0.75] [ 0.75 -0.25]]]>