在MATLAB中我可以发出命令:
[X,L] = eig(A,'nobalance');
为了计算没有balance option的特征值。
NumPy中的等效命令是什么?当我运行NumPy版本的eig时,它不会产生与打开nobalance的MATLAB结果相同的结果。
答案 0 :(得分:3)
您还可以考虑安装GNU Octave并使用oct2py将其嵌入Python中。例如,要确定矩阵A的特征值而不进行平衡,
from oct2py import octave
...
[X,L] = octave.eig(A)
Octave中的函数eig不执行矩阵A的平衡。
如果你想平衡矩阵A,你可以继续写下:
from oct2py import octave
...
A = octave.balance(A)
[X,L] = octave.eig(A)
oct2py
可以从以下网站下载:https://pypi.python.org/pypi/oct2py
在安装oct2py之前,您需要确保已经安装了SciPy和GNU Octave。祝你好运!
答案 1 :(得分:2)
NumPy目前无法做到这一点。正如霍克勒所说,现在有一段开放的门票暂时开放。但是,可以使用外部库来完成它。在这里,我编写了如何使用Python绑定到NAG库
http://www.walkingrandomly.com/?p=5303
应该可以使用任何LAPACK接口做类似的事情,例如英特尔MKL等。