Jupyter笔记本 xgboost导入

22

我有以下问题(我使用的是MAC):

我能够在终端上从python2.7或python3.6导入xgboost,但问题是我无法在Jupyter笔记本上导入它。

import xgboost as xgb

ModuleNotFoundError Traceback (most recent call last) in () ----> 1 import xgboost as xgb

ModuleNotFoundError: No module named 'xgboost'

虽然我写了:

!pip3 install xgboost

它打印出:

已满足要求:xgboost位于 /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/xgboost-0.6-py3.6.egg 已满足要求:numpy(来自 xgboost) 已满足要求:scipy(来自 xgboost)

求帮助,我到处搜索了:(

4个回答

16

在Jupyter Notebook单元格中,尝试运行以下命令:

import sys !{sys.executable} -m pip install xgboost

这将使包能够正确地安装在Jupyter笔记本上。


2
非常有帮助! - teddy
关于为什么在使用pip和jupyter notebook时这种方式更可取的更多细节,请查看此博客文章:链接 - Jakob
这就是解决方案! - Nicolas Moraes

15

运行shell转义!pip3并不保证它会安装在您正在运行的内核中。尝试:

import sys
print(sys.base_prefix)

请检查您的终端Pythons,看看是否有匹配的版本。您应该能够运行<base_prefix>/bin/pip install <package>来确保它被安装在正确的site-packages目录下。

您也可以通过查看kernel.json(很可能位于~/Library/Jupyter/kernels/<kernel>/kernel.json)来查看您的内核正在运行哪个python版本。

注意:您还可以使用编程方式安装软件包:

import pip
pip.main(['install', '<package>'])

这将强制它位于与您的内核相对应的正确site-packages中。


2
如果您正在使用Anaconda,可以使用以下命令安装XGBoost:conda install -c conda-forge xgboost

-2
由于您正在使用 macOS,您可以使用 Homebrew 安装 xgboost:
在终端中运行以下命令:
brew install xgboost

详细信息请参见this


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接