我有一个非常大的稀疏矩阵,表示马尔可夫链中的过渡马赛克,即矩阵每行的总和等于1,我有兴趣找到第一个特征值及其相应的小于1的向量。我知道特征值在[-1,1]部分中有界,它们都是真实的(非复杂的)。
我试图使用python的which
函数计算值,但是,函数的一个参数是要估计的特征值/向量的数量,每次我增加要估计的参数数量,数字也正好一个特征值也增长了
不用说,我使用值'LR'
的{{1}}参数来获取k个最大的特征值,其中k是要估计的值的数量。
有没有人知道如何解决这个问题(找到小于1的第一个特征值及其相应的向量)?
答案 0 :(得分:1)
我同意@pv。如果矩阵S
是对称的,则可以将其视为矩阵I - S
的拉普拉斯矩阵。 I - S
的连通分量的数量是该矩阵的零特征值的数量(即,与S
的特征值1相关联的空间的维数)。您可以检查相似矩阵为I - S*S'
的图表的连接组件的数量,例如:与scipy.sparse.csgraph.connected_components
。