特征值的英文是 eigenvalue 特征向量的英文是 eigenvector。
没错,eigen就是特征的前缀。
什么是特征值和特征向量呢?
设 A 是n阶方阵,若是 存在数m和非零n维列向量 x,使得 Ax=mx 建设,则称 m 是矩阵A的一个特征值(characteristic value)或本征值(eigenvalue)。非零n维列向量x称为矩阵A的属于(对应于)特征值m的特征向量或本征向量,简称A的特征向量或A的本征向量。
怎样 用python求特征值和特征向量
在numpy中已经有了现成的要领。就是使用np.linalg.eig函数。
eig函数,返回两个值,第一个是特征值,多重的特征值会返回多次。第二个是特征向量,而且返回的是已经单元化了的特征向量。也就是每个向量的范数为1。
相似对角化令A为n×n矩阵,其特征值为x1,x2...xn,特征向量为v1,v2...vn ,形成线性无关荟萃,以每个特征向量为列组成矩阵X,则矩阵X可以将矩阵A对角化,乘积矩阵X.T*A*X的主对角元素是矩阵A的特征值v1,v2...vn。
据此我们可以通过简朴的法式将矩阵对角化。
其中用到了我们之前写过的法式:
python与线性代数 自制库天生 三角矩阵 对角矩阵
我们来看一下效果 :