python 矩阵特征值分解_讲一下numpy的矩阵特征值分解与奇异值分解

本文介绍了如何使用numpy库进行矩阵的特征值分解和奇异值分解。通过示例展示了如何调用numpy.linalg.eig和svd函数,并验证了分解的正确性。在特征值分解中,讨论了特征向量和单位正交矩阵的概念;在奇异值分解中,解释了酉矩阵和奇异值矩阵的性质。
摘要由CSDN通过智能技术生成

1、特征值分解

主要还是调包:

from numpy.linalg import eig

特征值分解:  A = P*B*PT 当然也可以写成 A = QT*B*Q 其中B为对角元为A的特征值的对角矩阵,P=QT,

首先A得对称正定,然后才能在实数域上分解,

>>> A = np.random.randint(-10,10,(4,4))>>>A

array([[6, 9, -10, -1],

[5, 9, 5, -5],

[-8, 7, -4, 4],

[-1, -9, 0, 6]])>>> C =np.dot(A.T, A)>>>C

array([[126, 52, -3, -69],

[52, 292, -73, -80],

[-3, -73, 141, -31],

[-69, -80, -31, 78]])>>> vals, vecs =eig(C)>>>vals

array([357.33597086, 174.10172008, 8.84429957, 96.71800949])>>>vecs

array([[-0.28738314, -0.51589436, -0.38221983, -0.71075449],

[-0.87487263, 0.12873861, -0.24968051, 0.39456798],

[0.2572149 , -0.69304313, -0.33950158, 0.58161018],

[0.29300052, 0.48679627, -0.82237845, -0.02955945]

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值