[英]Options for installing scikit-learn
來自http://scikit-learn.org/dev/install.html#building-scikit-learn-with-pip
pip install --user --install-option="--prefix=" -U scikit-learn
--user標志要求pip在$ HOME / .local文件夾中安裝scikit-learn,因此不需要root權限。 該標志應使pip忽略以前在系統上安裝的scikit-learn的任何舊版本,同時受益於numpy和scipy的系統軟件包。 從源代碼正確構建這些依賴項可能很長且很復雜。
僅當Python具有帶有預定義prefix =條目的distutils.cfg配置時,才需要--install-option =“-prefix =”標志。
在man pip
我的pip 1.5.4
,為什么沒有--user
--install-option
-U
選項,雖然上面的命令可以運行?
對於--install-option
,
這是什么意思?
如何找出“如果Python具有帶有預定義的prefix =條目的distutils.cfg配置”?
“ distutils.cfg”是做什么用的?
對於-U
,是什么意思?
如果要將scikit-learn安裝到系統默認目錄中,應運行什么命令? 是嗎
pip install scikit-learn
?
首先,您肯定應該升級pip
,因為當前版本是6.1.1。 跑
pip install --upgrade pip
要做到這一點。 我不一定要相信man pip
所說的話,因為這可能是pip
的古代版本。 相反,請在此處使用文檔。
-U
和--upgrade
是同一件事。 --user
是分開的。
您無需擔心prefix
問題或distutils.cfg
。 您會知道是否有它們,因為這是您必須手動設置的。 因此,只需嘗試運行
pip install scikit-learn -U --user
升級pip
,希望一切都會順利進行。
如果您使用的是Linux或Unix系統(例如OS X),或者您在Windows上安裝了GNU命令行工具,並且希望pip
升級所有軟件包,則此命令應在bash中運行:
pip list | awk '{print $1}' | while read -r package; do sudo -H pip install -U "$package"; done
pip list
打印出已安裝的每個軟件包的名稱和版本(至少在我的Ubuntu 14.10系統上,包括安裝的系統或pip
在內的所有內容),並在括號中顯示其版本號。 awk '{print $1}'
在空格上分割每一行,並返回第一個字段(程序包名稱)。 while
循環讀取每個進入的行(軟件包名稱)並調用sudo -H pip install -U packagename
,它將查看軟件包是否為最新版本,如果不是最新版本,則將其升級。 我假設像Ubuntu那樣安裝的系統軟件包不會被升級,因為它們沒有在PyPI中列出,但是我在發現之前就殺死了該命令。
一種選擇是安裝Anaconda ,這將使您輕松安裝scikit-learn
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.