Issue
I have the problem below (I'm on a MAC)
I can import xgboost from python2.7 or python3.6 with my Terminal but the thing is that I can not import it on my Jupyter notebook.
import xgboost as xgb
ModuleNotFoundError Traceback (most recent call last) in () ----> 1 import xgboost as xgb
ModuleNotFoundError: No module named 'xgboost'
Although I write :
!pip3 install xgboost
It prints that :
Requirement already satisfied: xgboost in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/xgboost-0.6-py3.6.egg Requirement already satisfied: numpy in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from xgboost) Requirement already satisfied: scipy in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from xgboost)
Help please I searched everywhere :(
Solution
Running a shell escape !pip3
doesn't guarantee that it will install in the kernel you are running. Try:
import sys
print(sys.base_prefix)
and see if this matches either of your terminal pythons. You should be able to run <base_prefix>/bin/pip install <package>
to ensure it is in the right site-packages
.
You can also look at which python
your kernel is running by looking in kernel.json
most likely in ~/Library/Jupyter/kernels/<kernel>/kernel.json
.
Note: you can also programmatically install packages with:
import pip
pip.main(['install', '<package>'])
which will force it to be in the right site-packages
for your kernel.
Answered By - AChampion
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.