【发布时间】:2015-12-31 19:49:59
【问题描述】:
我创建了一个任意的 2x2 矩阵:
In [87]: mymat = np.matrix([[2,4],[5,3]])
In [88]: mymat
Out[88]:
matrix([[2, 4],
[5, 3]])
我尝试使用 numpy.linalg.eig 计算特征向量:
In [91]: np.linalg.eig(mymat)
Out[91]:
(array([-2., 7.]),
matrix([[-0.70710678, -0.62469505],
[ 0.70710678, -0.78086881]]))
In [92]: eigvec = np.linalg.eig(mymat)[1][0].T
In [93]: eigvec
Out[93]:
matrix([[-0.70710678],
[-0.62469505]])
我将我的一个特征向量与我的矩阵相乘,期望结果是一个向量,该向量是我的特征向量的标量倍数。
In [94]: mymat * eigvec
Out[94]:
matrix([[-3.91299375],
[-5.40961905]])
然而事实并非如此。谁能向我解释这里出了什么问题?
【问题讨论】:
标签: python numpy matrix eigenvector