V tomto článku uvidíme NumPy inverznú maticu v Pythone a pokúsime sa pochopiť jej koncept. Inverzia matice je len prevrátená hodnota matice, ako to robíme v normálnej aritmetike pre jedno číslo, ktoré sa používa na riešenie rovníc na nájdenie hodnoty neznámych premenných. Inverzná matica je tá matica, ktorá po vynásobení pôvodnou maticou poskytne maticu identity.
Inverzná matica existuje iba vtedy, ak matica je nejednotný, tj determinant by nemal byť 0 . Pomocou determinantu a adjointu môžeme ľahko nájsť inverznú hodnotu štvorcovej matice pomocou nižšie uvedeného vzorca,
if det(A) != 0 A-1 = adj(A)/det(A) else 'Inverse doesn't exist'>
Maticová rovnica:
kde,
A-1: Inverzná matica A
X: T neznámy premenný stĺpec
B: Matrica roztoku
Inverzná matica pomocou NumPy
Python poskytuje veľmi jednoduchú metódu na výpočet inverznej hodnoty matice. Funkcia numpy.linalg.inv() je k dispozícii v module NumPy a používa sa na výpočet inverznej matice v Pythone.
Syntax: numpy.linalg.inv(a)
Parametre:
a: Matica má byť invertovaná
Vrátenie: Inverzná k matici a.
Príklad 1: V tomto príklade vytvoríme maticu poľa 3 x 3 NumPy a potom ju prevedieme na inverznú maticu pomocou funkcie 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))> |
>
>
Výkon:
[[ 0.17647059 -0.00326797 -0.02287582] [ 0.05882353 -0.13071895 0.08496732] [-0.11764706 0.1503268 0.05228758]]>
Príklad 2: V tomto príklade vytvoríme maticu poľa 4 x 4 NumPy a potom ju prevedieme pomocou funkcie np.linalg.inv() na inverznú maticu v Pythone.
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))> |
>
>
Výkon:
[[ 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]]>
Príklad 3: V tomto príklade vytvoríme viacero matíc poľa NumPy a potom ich prevedieme na ich inverzné matice pomocou funkcie np.linalg.inv().
správca úloh linux
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))> |
>
>
Výkon:
[[[-2. 1. ] [ 1.5 -0.5 ]] [[-1.25 0.75] [ 0.75 -0.25]]]>