我想使用
Python 2.6.5计算大型ish矩阵的特征值(约1000×1000).我一直无法这样做.我还没有找到任何其他线程来解决这个问题.
当我跑
a = rand(1000,1000);
tic;
for i =1:10
eig(a);
end
toc;
在MATLAB中大约需要30秒. Python中类似的测试需要216秒.使用RPy通过R运行它没有明显加快计算速度.八度音乐测试耗时93秒.我对速度的差异感到有些不解.
我可以在网上找到的这样一个问题的唯一实例是this,这是几岁.那个问题中的海报有一个不同的Python目录结构(我认为这个帖子的年龄,尽管我可能会误会),所以我没有足够的信心试图按照记者的指示.
我的软件包经理说我已经安装了LAPACK,我正在使用NumPy和SciPy进行Python的计算:
from numpy import *
from scipy import *
from numpy.linalg import *
import time
a = randn(1000,1000)
tic = time.clock()
for i in range(0,10):
eig(a)
toc = time.clock()
print "Elapsed time is ", toc-tic
我对Python很新,所以我可能会做一些愚蠢的事情.如果我需要提供更多信息,请通知我.