NumPy - 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)