2017-08-10 109 views
1

我所用的Python加載舊版本sklearn

pip uninstall scikit-learn 
pip install scikit-learn==0.18.2 

不過安裝的版本0.18.2我的Mac上scikit學習,當我運行

python 
>>> import sklearn 
>>> sklearn.__version__ 

我得到

'0.17' 

有趣的是,即使在我卸載scikit-learn之後,這個舊版本仍然安裝。這可能與某種程度上安裝的多個Python版本有關嗎?我試圖在一個點上試圖使用Anaconda來試圖獲得numpy和scipy的運行,然後轉而使用ActivePython。當我運行

which python 

我得到

/Library/Frameworks/Python.framework/Versions/2.7/bin/python 

我知道有對SO非常類似的問題,但沒有發佈的解決方案已經奏效。

回答

1

檢查你的python路徑。在unix上:

echo $PYTHONPATH 

這將輸出用於模塊導入的所有路徑。您可能在其他地方安裝了一些舊版本。

+0

賓果!我設置了'PYTHONPATH =/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages'來匹配@JoshuaRLi建議的'pip --version'的結果。謝謝! – yearling

+0

@yearling自己搞砸了不止一次;)現在我離開這個空,並使用conda,沒有更多的問題! – Y0da

0

您必須確保您要調用的pip是屬於您調用的pythonpip可執行文件。否則,如果您的計算機上有多個版本,則會將python軟件包安裝到錯誤的版本。

pip --version將列出與您調用的任何pip相關聯的Python版本。

python -m pip install scikit-learn --upgrade將使用您調用的任何python來調用其自己的安裝pip(如果存在)。這應該在你的用例中起作用,因爲它可以讓你不用擔心無論你的地圖是pip

+0

我花了5分鐘之前弄清楚如何做到這一點的任何5秒提示?特別是pip2.7 --install scikit-learn == 0.18.2給了我相同的行爲。 – yearling

+0

@yearling別擔心,我傾向於用附加信息快速更新我的答案:) – JoshuaRLi

+0

'pip --version' yield:pip 9.0.1 from /Library/Frameworks/Python.framework/Versions/2.7/lib/python2 .7/site-packages(python 2.7)。 'python -m pip install scikit-learn --upgrade'得到 需求已經是最新的:scikit-learn在/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages – yearling