I've installed version 0.18.2 of scikit-learn on my Mac using
pip uninstall scikit-learn
pip install scikit-learn==0.18.2
However, when I run
python
>>> import sklearn
>>> sklearn.__version__
I get
'0.17'
Interestingly, this older version is still installed even after I uninstall scikit-learn. Could this have something to do with multiple versions of Python somehow being installed? I beat my head against the wall trying to use Anaconda at one point to try to get numpy and scipy running, and have since switched to ActivePython. When I run
which python
I get
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
I know there are very similar questions on SO, but none of the posted solutions have worked.
Check your python path. On unix:
This will output all paths used for module imports. You might have some old version installed elsewhere.
You have to make sure that the
pip
you are invoking is thepip
executable that belongs to thepython
that you are invoking. Otherwise, you're installing python packages to the wrong version, if you have multiple versions on your machine.pip --version
will list the Python version associated with whateverpip
you invoked.python -m pip install scikit-learn --upgrade
will use whateverpython
you're invoking to invoke its own installation ofpip
(if it exists). This should work in your use case because it lets you not worry about whatever yourpip
maps to.