获取未排序的特征值的问题

issue in getting unsorted eigen values

我想从矩阵中提取线性无关样本。我想为此使用特征值。但问题是基于 numpy/scipy 的函数给出了特征值的排序列表。通过它我松开了哪个特征值对应于原始矩阵的哪个行向量的信息,以便小心地丢弃它们。

我尝试创建自己的代码来计算特征值:

   numpy.linalg.solve(numpy.linalg.det(I,A)) 

其中,A为原矩阵,I为恒等式。但这会产生错误并且是不正确的。我有什么办法可以解决这个问题?

他们默认不给出排序列表,例如尝试

import numpy as np
from numpy import linalg as LA
A = np.array([[1,2,3],[3,2,1],[1,0,-1]])
w, v = LA.eig(A)
print(w)
    [  4.31662479e+00  -2.31662479e+00   3.43699053e-17]
print(v)
    [[ 0.58428153  0.73595785  0.40824829]
     [ 0.80407569 -0.38198836 -0.81649658]
     [ 0.10989708 -0.55897311  0.40824829]]

特征值w[0]对应v的第0列,特征值w[1]对应第1列,....要提取第i列向量,只需使用

u = v[:,i]