当前位置: 首页 > 文档资料 > NumPy 中文教程 >

inv

优质
小牛编辑
135浏览
2023-12-01

我们使用numpy.linalg.inv()函数来计算矩阵的逆。 矩阵的逆是这样的,如果它乘以原始矩阵,则得到单位矩阵。

例子 (Example)

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

例子 (Example)

现在让我们在我们的例子中创建一个矩阵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)