创建一个 returns 具有特征值和特征向量的字典的函数
Creating a function that returns a dictionary with eigenvalue and eigenvector
我正在尝试在 Python 中创建一个函数 returns 一个带有特征向量及其对应特征值的字典:
这是我目前的工作代码:
def eigenvectors(a):
b = np.matrix(a)
dicto = {}
for i in b:
dicto.append(b)
return dicto
eigenvectors('1,2,3')
我认为我的处理方式不正确。基本上,我试图定义的参数是一个矩阵,无论我在函数中放入什么矩阵,我都能够取回与之关联的特征向量和特征值。
如果有人能帮助我,我将不胜感激。我觉得我已经记下了这个概念,但我只是很难将功能组合在一起。
numpy.linalg.eig
有帮助吗? https://numpy.org/doc/stable/reference/generated/numpy.linalg.eig.html
如果你只希望它作为字典,你可以简单地使用 zip
:
a = np.array([
[1,2,3],
[4,5,6],
[7,8,9]
])
def eigenvectors(a):
values, vectors = np.linalg.eig(a)
return dict(zip(values, vectors))
eigenvectors(a)
我正在尝试在 Python 中创建一个函数 returns 一个带有特征向量及其对应特征值的字典:
这是我目前的工作代码:
def eigenvectors(a):
b = np.matrix(a)
dicto = {}
for i in b:
dicto.append(b)
return dicto
eigenvectors('1,2,3')
我认为我的处理方式不正确。基本上,我试图定义的参数是一个矩阵,无论我在函数中放入什么矩阵,我都能够取回与之关联的特征向量和特征值。
如果有人能帮助我,我将不胜感激。我觉得我已经记下了这个概念,但我只是很难将功能组合在一起。
numpy.linalg.eig
有帮助吗? https://numpy.org/doc/stable/reference/generated/numpy.linalg.eig.html
如果你只希望它作为字典,你可以简单地使用 zip
:
a = np.array([
[1,2,3],
[4,5,6],
[7,8,9]
])
def eigenvectors(a):
values, vectors = np.linalg.eig(a)
return dict(zip(values, vectors))
eigenvectors(a)