转:numpy.linalg.eig() 计算矩阵特征向量

Posted ruogu2019

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了转:numpy.linalg.eig() 计算矩阵特征向量相关的知识,希望对你有一定的参考价值。

https://blog.csdn.net/chixujohnny/article/details/51063617

 

在PCA中有遇到,在这里记录一下

计算矩阵的特征值个特征向量,下面给出几个示例代码:

在使用前需要单独import一下

>>> from numpy import linalg as LA

>>> w, v = LA.eig(np.diag((1, 2, 3)))
>>> w; v
array([ 1., 2., 3.])
array([[ 1., 0., 0.],
[ 0., 1., 0.],
[ 0., 0., 1.]])

>>> w, v = LA.eig(np.array([[1, -1], [1, 1]]))
>>> w; v
array([ 1. + 1.j, 1. - 1.j])
array([[ 0.70710678+0.j , 0.70710678+0.j ],
[ 0.00000000-0.70710678j, 0.00000000+0.70710678j]])

>>> a = np.array([[1, 1j], [-1j, 1]])
>>> w, v = LA.eig(a)
>>> w; v
array([ 2.00000000e+00+0.j, 5.98651912e-36+0.j]) # i.e., {2, 0}
array([[ 0.00000000+0.70710678j, 0.70710678+0.j ],
[ 0.70710678+0.j , 0.00000000+0.70710678j]])

>>> a = np.array([[1 + 1e-9, 0], [0, 1 - 1e-9]])
>>> # Theor. e-values are 1 +/- 1e-9
>>> w, v = LA.eig(a)
>>> w; v
array([ 1., 1.])
array([[ 1., 0.],
[ 0., 1.]])

官方文档链接:http://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.eig.html
---------------------
作者:chixujohnny
来源:CSDN
原文:https://blog.csdn.net/chixujohnny/article/details/51063617
版权声明:本文为博主原创文章,转载请附上博文链接!


























以上是关于转:numpy.linalg.eig() 计算矩阵特征向量的主要内容,如果未能解决你的问题,请参考以下文章

如何获得三对角Toeplitz矩阵的实特征值和特征向量?

[图解tensorflow源码] 入门准备工作附常用的矩阵计算工具[转]

numpy使用diagonal函数和sum函数计算矩阵的迹(trace)使用T函数对矩阵进行转置(transpose matrix)

(转)旋转矩阵推导

numpy和matlab计算协方差矩阵的不同(matlab是标准的,numpy相当于转置后计算)

利用matlab对二维矩阵进行计算分析