我在使用 Christoph Gohlke 的 32 位版本软件包的 32 位机器上使用 Python v2.7.5 和 scipy v0.12.0 和 py2exe v0.6.9 收到以下错误消息。如果有人能提供相关和有用的建议,我将不胜感激。这是错误消息:
Traceback (most recent call last):
File "MainWindow.py", line 13, in <module>
from svm.svm import SVM
File "svm\svm.pyc", line 4, in <module>
File "sklearn\svm\__init__.pyc", line 13, in <module>
File "sklearn\svm\classes.pyc", line 3, in <module>
File "sklearn\linear_model\__init__.pyc", line 20, in <module>
File "sklearn\linear_model\sgd_fast.pyc", line 12, in <module>
File "sklearn\linear_model\sgd_fast.pyc", line 10, in __load
File "weight_vector.pxd", line 14, in init sklearn.linear_model.sgd_fast
(sklearn\linear_model\sgd_fast.c:13206)
ImportError: No module named weight_vector
这是我的 setup.py 文件:
from distutils.core import setup
import py2exe
import sys
sys.path.append('../')
dcm = 'dcm.testDCM'
svm_path = 'svm.svm'
setup(windows=[{"script":"MainWindow.py"}],
options={"py2exe":{
"includes" : ["sip", dcm, svm_path,
'sklearn',
'scipy.sparse.csgraph._validation',
'sklearn.linear_model.sgd_fast.weight_vector']}})
实际上,我已经用 py2exe 问题解决了这个问题scipy中的问题,并使用该问题中的第二个答案(答案)解决了这个问题,在我的 py2exe 包含选项中添加了“scipy.sparse.csgraph._validation”。
然后我想对错误“没有名为 weight_vector 的模块”做类似的事情,比如在我的包含选项中添加“sklearn.linear_model.sgd_fast.weight_vector”。但是,它没有用。
我检查了目录“sklearn.linear_model.sgd_fast”,却发现 sgd_fast 是一个“.pyd”文件,而不是一个 .py 文件。也许这就是我的方法行不通的原因。
我对处理 pyd 文件一无所知。有没有人遇到过类似的问题或有任何想法?我真的需要你的帮助。