想了解如何在Windows 7下安装libsvm for python?
我下载了livsvm zip,但我不明白其中包含的说明。我已将libsvm.dll放在我的c:\ windows \ system32目录中,但是当我尝试
时import svmutil
或
from svm import *
我得到了
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "svmutil.py", line 3, in <module>
from svm import *
File "svm.py", line 16, in <module>
'../windows/libsvm.dll'))
File "C:\Python27\lib\ctypes\__init__.py", line 365, in __init__
self._handle = _dlopen(self._name, mode)
WindowsError: [Error 126] The specified module could not be found
答案 0 :(得分:12)
已解决:
1.导航至http://www.lfd.uci.edu/~gohlke/pythonlibs/#libsvm
2.下载与您的操作系统对应的libsvm文件.whl
3.打开命令提示符并导航到包含下载的.whl文件的文件夹
4.在命令提示符中键入以下命令 -
pip install libsvm-3.20-cp27-none-win32.whl
注意:在pip install之后键入.whl文件的名称
答案 1 :(得分:4)
我认为没有必要将dll放在C:\ windows \ system32目录中,除非您使用旧版本的Windows(XP及更早版本)。
确保:
from svmutil import *
的python测试脚本这适用于我的电脑。
答案 2 :(得分:4)
我发现在Windows上安装libSVM以及其他Python库的最佳方法是使用非官方的Windows二进制文件,在这里:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#libsvm
此页面提供了许多科学开源扩展包的32位和64位Windows二进制文件,用于Python编程语言的官方CPython发行版。
大多数二进制文件都是根据PyPI或项目公共修订控制系统中的源代码构建的。源代码更改(如果有)已提交给项目维护人员或包含在软件包中。
许多二进制文件依赖于Numpy-MKL 1.8和/或Microsoft Visual C ++ 2008(64位或32位,对于CPython 2.6到3.2)或Visual C ++ 2010(64位或32位,对于CPython 3.3和3.4)可再发行包。
答案 3 :(得分:3)
我在Windows 7和libsvm 3.18上遇到了很多问题,上面的解决方案都没有。无论我尝试过哪种文件路径体操,它都无法找到或不喜欢../windows/libsvm.dll
文件。我也遇到了32位与64位不兼容的问题(我的python是64位)。
我支持自己试图从视觉工作室重新编译的痛苦,但最终没有必要。最终为我工作的只是安装scikit-learn,其中包含了libsvm并且很好地包含在内部(http://scikit-learn.org/stable/index.html)。
如果你像我一样使用Anaconda发行版,这是非常无痛的。只需在命令行键入conda install scikit-learn
即可。
然后您可以import sklearn.svm.libsvm as svm
并像调用libsvm一样调用它,如果您想忽略scikit-learn的其他方面。它只是有效。
答案 4 :(得分:1)
我知道你在1年前问过这个问题,但我仍然想发布我的解决方案,万一其他人可能会受益。
将libsvm放到任何地方。我的C:\Python27\Lib\site-packages\libsvm-3.17
在Windows环境中设置PYTHONPATH。
转到系统属性 - &gt;高级 - &gt;环境变量。
添加名为PYTHONPATH
的新变量,将值设置为C:\Python27\Lib\site-packages\libsvm-3.17\python
。