Python |其原始行列对应的特征向量分量
Python | Eigenvector components corresponding to their original rows and columns
我希望这不是一个坏问题,但我正在计算对称矩阵的特征向量和特征值,我们称它为 A。
A 表示 10x10。
我想得到第二大特征值对应的特征向量。我做
[D, V] = scipy.sparse.linalg.eigs(L, 2)
s = V[:, 0] # this is the 2nd eigenvecotr
现在,我想根据 's' 中的某些元素与其他一些数字的比较来进行一些计算。例如:
for i in range(0, len(s)):
if s[0] > some number:
do something with the first column/row (if this was a graph, the first node) in A
我的问题是:
- 我使用 scipy.sparse.linalg.eigs 还是 scipy.sparse.linalg.eigsh 有关系吗?我在网上看到了两者的文档,但看不出区别。
- 特征向量中的元素是否对应于它们原来的rows/columns?比如s[0]对应A的firstcolumn/row的特征向量?
docs 对 row/column 的问题很清楚:
The column v[:, i] is the eigenvector corresponding to the eigenvalue w[i]
eigs 和 eigsh 的区别在于后者假设一个 symmetric/hermitian 矩阵。
最后,对于 10x10 矩阵,您不需要任何稀疏矩阵,最好只使用 scipy.linalg.
中的函数
我希望这不是一个坏问题,但我正在计算对称矩阵的特征向量和特征值,我们称它为 A。
A 表示 10x10。
我想得到第二大特征值对应的特征向量。我做
[D, V] = scipy.sparse.linalg.eigs(L, 2)
s = V[:, 0] # this is the 2nd eigenvecotr
现在,我想根据 's' 中的某些元素与其他一些数字的比较来进行一些计算。例如:
for i in range(0, len(s)):
if s[0] > some number:
do something with the first column/row (if this was a graph, the first node) in A
我的问题是:
- 我使用 scipy.sparse.linalg.eigs 还是 scipy.sparse.linalg.eigsh 有关系吗?我在网上看到了两者的文档,但看不出区别。
- 特征向量中的元素是否对应于它们原来的rows/columns?比如s[0]对应A的firstcolumn/row的特征向量?
docs 对 row/column 的问题很清楚:
The column v[:, i] is the eigenvector corresponding to the eigenvalue w[i]
eigs 和 eigsh 的区别在于后者假设一个 symmetric/hermitian 矩阵。
最后,对于 10x10 矩阵,您不需要任何稀疏矩阵,最好只使用 scipy.linalg.
中的函数