(三)scipy4.0:线性计算与矩阵分解---行列式、逆矩阵、方程组、特征值特征向量、矩阵分解

"""
scipy4.0:线性计算与矩阵分解
马玉华 2019.11.19
"""
import scipy
import numpy as np

def main():
    from scipy import linalg as lg

    arr = np.array([[1,2],[3,4]])
    print('det:',lg.det(arr))   # 运算行列式
    print('inv:',lg.inv(arr))   # 逆矩阵  # A=inv(B),其中B是输入的可逆矩阵,输出A就是B的逆矩阵,逆矩阵满足性质 AB=BA=E (E是单位阵)

    b = np.array([6,14])
    print('solve:',lg.solve(arr,b))   # 解线性方程组  # 解方程arr * [[x],[y]] = b , 返回[x,y]

    # 特征值、特征向量
    """设A是n阶方阵,如果数λ和n维非零列向量x使关系式Ax=λx成立,那么,λ称为矩阵A特征值,非x称为对应特征值λ的特征向量。
    式Ax=λx也可写成(A-λE)X=0。它有非零解的充分必要条件是系数行列式| A-λE|=0,可以用这个行列式先解出λ,用方程|A-λE|X=0再解出对应λ的特征向量x"""
    print('eig:',lg.eig(arr))   # 打印特征值arr、特征向量arr

    # 矩阵分解,分解成 arr = arr1 * arr2
    print('lu分解:',lg.lu(arr))
    print('qr分解:',lg.qr(arr))
    print('svd分解:',lg.svd(arr))
    print('schur分解:',lg.schur(arr))



if __name__ == '__main__':
    main()

输出结果:

"C:\Users\mayuhuaw\Desktop\Python数据分析-基础技术\3. scipy\venv\Scripts\python.exe" "C:/Users/mayuhuaw/Desktop/Python数据分析-基础技术/3. scipy/scipy4.0:线性计算与矩阵分解.py"
det: -2.0

inv: [[-2.   1. ]
 [ 1.5 -0.5]]
 
solve: [2. 2.]

eig: (array([-0.37228132+0.j,  5.37228132+0.j]), array([[-0.82456484, -0.41597356],
       [ 0.56576746, -0.90937671]]))
       
lu分解: (array([[0., 1.],
       [1., 0.]]), array([[1.        , 0.        ],
       [0.33333333, 1.        ]]), array([[3.        , 4.        ],
       [0.        , 0.66666667]]))
qr分解: (array([[-0.31622777, -0.9486833 ],
       [-0.9486833 ,  0.31622777]]), array([[-3.16227766, -4.42718872],
       [ 0.        , -0.63245553]]))
svd分解: (array([[-0.40455358, -0.9145143 ],
       [-0.9145143 ,  0.40455358]]), array([5.4649857 , 0.36596619]), array([[-0.57604844, -0.81741556],
       [ 0.81741556, -0.57604844]]))
schur分解: (array([[-0.37228132, -1.        ],
       [ 0.        ,  5.37228132]]), array([[-0.82456484, -0.56576746],
       [ 0.56576746, -0.82456484]]))

进程已结束,退出代码 0

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值