如何使用SciPy在Python中计算矩阵的特征值和特征向量?
特征向量和特征值在许多情况下都有用途。在德语中,“Eigen”的意思是“自有”或“典型”。特征向量也称为“特征向量”。假设我们需要对数据集执行某些转换,但给定条件是数据集中数据的方向不应改变。这就是可以使用特征向量和特征值的情况。
给定一个方阵(行数等于列数的矩阵),特征值和特征向量满足以下公式。

计算特征向量是在找到特征值后进行的。
注意 ——特征值在三个或更多维度上也很有效。
而不是手动执行这些数学计算,SciPy在库中提供了一个名为“eig”的函数,可以帮助计算特征值和特征向量。
eig函数的语法
scipy.linalg.eig(matrix)
让我们来看看如何使用“eig”函数 –
更多Python相关文章,请阅读:Python 教程
示例
from scipy import linalg
import numpy as np
my_arr = np.array([[5,7],[11,3]])
eg_val, eg_vect = linalg.eig(my_arr)
print("The Eigenvalues are :")
print(eg_val)
print("The Eigenvectors are :")
print(eg_vect)
输出
The Eigenvalues are :
[12.83176087+0.j -4.83176087+0.j]
The Eigenvectors are :
[[ 0.66640536 -0.57999285]
[ 0.74558963 0.81462157]]
说明
- 导入所需的库。
- 使用Numpy库定义具有某些值的矩阵。
- 将矩阵作为参数传递给计算矩阵的特征值和特征向量的“eig”函数。
- 这些计算的数据存储在两个不同的变量中。
- 此输出显示在控制台上。
极客教程