导入期间 Scikit-learn 中的运行时错误
Posted
技术标签:
【中文标题】导入期间 Scikit-learn 中的运行时错误【英文标题】:Runtime error in Scikit-learn during import 【发布时间】:2016-12-04 16:37:49 【问题描述】:我是 Python 新手。因此,如果这听起来很愚蠢,请提前抱歉,但我在论坛中找不到可以理解的解决方案。我正在尝试在 Pycharm 中运行我的程序,最近将其从 Python 3.5 更改为 Python 2.7.12。这样做之后,我在从 Scikit-learn 导入时开始收到以下错误:
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/sklearn/__check_build/__init__.py", line 46, in <module>
raise_build_error(e)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/sklearn/__check_build/__init__.py", line 41, in raise_build_error
%s""" % (e, local_dir, ''.join(dir_content).strip(), msg))
ImportError: dynamic module does not define init function (init_check_build)
___________________________________________________________________________
Contents of /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/sklearn/__check_build:
__init__.py __init__.pyc _check_build.so
setup.py setup.pyc
___________________________________________________________________________
It seems that scikit-learn has not been built correctly.
If you have installed scikit-learn from source, please do not forget
to build the package before using it: run `python setup.py install` or
`make` in the source directory.
If you have used an installer, please check that it is suited for your
Python version, your operating system and your platform.
Process finished with exit code 1
我正在使用 Pycharm IDE - 2016.1、Mac OS、Python 2.7.12。请告诉我如何解决这个问题。
谢谢
【问题讨论】:
【参考方案1】:根据您的错误消息,您似乎仍然用完了lib/python2.7/site-packages/
。您需要配置您的解释器以使用 Anaconda for Python 3。如果您已正确安装 Anaconda,您应该能够转到 Settings -> NameOfYourProject -> Project Interpreter。将解释器更改为指向您的 Anaconda 3.x 堆栈。
另外,请确保您下载/安装 Anaconda 3.x(不仅仅是 Python)。 Anaconda 3 带有 Python 3 解释器,因此您只需安装最新版本,您应该可以在 Pycharm 下拉菜单中找到它。
【讨论】:
是的,我已经尝试了所有这些,但 Python 3 具有 scipy,并且由于我使用已实现的项目作为在 Python 2.7 中实现的库,因此它会导致问题并引发运行时错误。所以我已经切换到使用 Python 2.7 的 Canopy IDE。 感谢您的帮助。以上是关于导入期间 Scikit-learn 中的运行时错误的主要内容,如果未能解决你的问题,请参考以下文章
无法导入 scikit-learn - ValueError:numpy.dtype 的大小错误,