Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 对特征值和相应的特征向量进行排序_Python_Sorting_Eigenvector - Fatal编程技术网

Python 对特征值和相应的特征向量进行排序

Python 对特征值和相应的特征向量进行排序,python,sorting,eigenvector,Python,Sorting,Eigenvector,对于矩阵a,我有一组特征值和相应的特征向量,使用标准方法,eigvals,eigvecs=la.eig(a)导入scipy.linalg为la 使用np.sort(eigvals,axis=-0)对特征值进行排序 我们如何重新排列相应的特征向量。我认为您需要的是获得已排序索引的列表,然后使用np.argsort按该顺序获取特征向量和特征值 可能是这样的: import numpy as np import scipy.linalg as la A = np.random.rand(3, 3)

对于矩阵a,我有一组特征值和相应的特征向量,使用标准方法,
eigvals,eigvecs=la.eig(a)
导入
scipy.linalg为la

使用
np.sort(eigvals,axis=-0)
对特征值进行排序

我们如何重新排列相应的特征向量。

我认为您需要的是获得已排序索引的列表,然后使用
np.argsort
按该顺序获取特征向量和特征值

可能是这样的:

import numpy as np
import scipy.linalg as la

A =  np.random.rand(3, 3)
eigvals, eigvecs = la.eig(A)
sorted_indexes = np.argsort(eigvals)
eigvals = eigvals[sorted_indexes]
eigvecs = eigvecs[:,sorted_indexes]

附言:似乎@srikrishna已经发布了与解决方案的链接。我会将响应保留在Stackoverflow中。

我是python的新手。下面的链接中提供了这个幼稚问题的解决方案。()