numpy.linalg.inv() 函数
我们使用 numpy.linalg.inv() 函数来计算矩阵的逆。 矩阵的逆是这样的,如果它与原始矩阵相乘,它会产生单位矩阵。
示例
import numpy as np x = np.array([[1,2],[3,4]]) y = np.linalg.inv(x) print x print y print np.dot(x,y)
它应该产生以下输出 −
[[1 2] [3 4]] [[-2. 1. ] [ 1.5 -0.5]] [[ 1.00000000e+00 1.11022302e-16] [ 0.00000000e+00 1.00000000e+00]]
示例
现在让我们在示例中创建矩阵 A 的逆矩阵。
import numpy as np a = np.array([[1,1,1],[0,2,5],[2,5,-1]]) print 'Array a:” print a ainv = np.linalg.inv(a) print 'Inverse of a:' print ainv print 'Matrix B is:' b = np.array([[6],[-4],[27]]) print b print 'Compute A-1B:' x = np.linalg.solve(a,b) print x # this is the solution to linear equations x = 5, y = 3, z = -2
它将产生以下输出 −
Array a: [[ 1 1 1] [ 0 2 5] [ 2 5 -1]] Inverse of a: [[ 1.28571429 -0.28571429 -0.14285714] [-0.47619048 0.14285714 0.23809524] [ 0.19047619 0.14285714 -0.0952381 ]] Matrix B is: [[ 6] [-4] [27]] Compute A-1B: [[ 5.] [ 3.] [-2.]]
使用函数也可以获得相同的结果 −
x = np.dot(ainv,b)