所以我有3个numpy数组,其尺寸如下:
a.shape = (704, 528)
b.shape = (704, 528)
c.shape = (704, 528)
而且我有一个像这样的方阵,
mat = np.array([[a, b], [b, c]])
我需要找到它的特征值。我知道它将成为特征值的矩阵。但是当我使用numpy.linalg.eig()
时,它给了我一个错误:numpy.linalg.LinAlgError: Last 2 dimensions of the array must be square
。
我还没有找到很多有关如何执行此操作的资源,有人可以引导我找到任何资源或提供解决方案吗?谢谢!
特征值仅针对平方矩阵定义。
您的矩阵具有2 * 704 = 1408行和2 * 528 = 1056列,因此由于numpy.linalg.eig()
期望将正方形矩阵作为输入,因此会出现错误。
根据您想要计算特征值的目标,您可能还需要考虑为非方阵定义的SVD。您可能还需要检查构造的矩阵是否确实是要构造的矩阵。