打算學習 Python 來作數據分析的你,是否是在開始時就遇到各類麻煩呢?css
- 到底該裝 Python2 呢仍是 Python3 ?
- 爲何安裝 Python 時老是出錯?
- 怎麼安裝工具包呢?
- 爲何提示說在安裝這個工具前必須先安裝一堆其餘不明因此的工具?
相信大多數 Python 的初學者們都曾爲環境問題而頭疼不已,但你並不孤獨,你們都是這麼折騰過來的。爲了在入門時少走彎路,而且讓高漲的積極性不至於太受打擊,這裏推薦使用 Anaconda 來管理你的安裝環境和各類工具包。python
本文介紹了Anaconda的使用,全文大綱以下:程序員
- 爲何選擇 Anaconda
* 什麼是 Anaconda * 什麼是 conda * Anaconda 的優勢
Anaconda是專一於數據分析的Python發行版本,包含了conda、Python等190多個科學包及其依賴項。做爲好奇寶寶的你是否是發現了一個新名詞 conda,那麼你必定會問 conda 又是什麼呢?web
conda 是開源包(packages)和虛擬環境(environment)的管理系統。bash
packages 管理: 可使用 conda 來安裝、更新 、卸載工具包 ,而且它更關注於數據科學相關的工具包。在安裝 anaconda 時就預先集成了像 Numpy、Scipy、 pandas、Scikit-learn 這些在數據分析中經常使用的包。另外值得一提的是,conda 並不只僅管理Python的工具包,它也能安裝非python的包。好比在新版的 Anaconda 中就能夠安裝R語言的集成開發環境 Rstudio。機器學習
虛擬環境管理: 在conda中能夠創建多個虛擬環境,用於隔離不一樣項目所需的不一樣版本的工具包,以防止版本上的衝突。對糾結於 Python 版本的同窗們,咱們也能夠創建 Python2 和 Python3 兩個環境,來分別運行不一樣版本的 Python 代碼。函數
知道 是什麼(what) 的同時,咱們也須要問一問 爲何(why)。那麼,爲何要選擇用Anaconda呢?工具
Anaconda的優勢總結起來就八個字:省時省心、分析利器。學習
省時省心: Anaconda經過管理工具包、開發環境、Python版本,大大簡化了你的工做流程。不只能夠方便地安裝、更新、卸載工具包,並且安裝時能自動安裝相應的依賴包,同時還能使用不一樣的虛擬環境隔離不一樣要求的項目。大數據
分析利器: 在 Anaconda 官網中是這麼宣傳本身的:適用於企業級大數據分析的Python工具。其包含了720多個數據科學相關的開源包,在數據可視化、機器學習、深度學習等多方面都有涉及。不只能夠作數據分析,甚至能夠用在大數據和人工智能領域。
解決了 是什麼 以及 爲何 的問題後,下面讓咱們看一下 怎麼作(How)。
能夠從這裏下載 Anaconda 的安裝程序以及查看安裝說明。不管是 Windows、Linux 仍是 MAC 的 OSX 系統,均可以找到對應的安裝軟件。若是你的電腦是64位則儘可能選64位版本。至於 Python 的版本是 2.7 仍是 3.x,這裏推薦你使用 Python3,由於 Python2 終將中止維護。可能目前市面上大多數教程使用的都仍是 Python2,這也不用着急,由於在 Anaconda 中能夠同時管理兩個 Python 版本的環境。
根據提示進行安裝,完成後你大概會驚訝地發現電腦中多了好多應用,不用擔憂,咱們一項項來看:
- Anaconda Navigator :用於管理工具包和環境的圖形用戶界面,後續涉及的衆多管理命令也能夠在 Navigator 中手工實現。
安裝完成後,咱們還須要對全部工具包進行升級,以免可能發生的錯誤。打開你電腦的終端,在命令行中輸入:
conda upgrade --all
在終端詢問是否安裝以下升級版本時,輸入 y
。
有的狀況下,你可能會遇到找不到 conda 命令的錯誤提示,這極可能是環境路徑設置的問題,須要添加conda環境變量:export PATH=xxx/anaconda/bin:$PATH
, 其中xxx替換成anaconda的安裝路徑。
至此,安裝完成,下面讓咱們看一下如何用 Anaconda 管理工具包和環境。
安裝一個 package:
conda install package_name
這裏 package_name 是須要安裝包的名稱。你也能夠同時安裝多個包,好比同時安裝numpy 、scipy 和 pandas,則執行以下命令:
conda install numpy scipy pandas
你也能夠指定安裝的版本,好比安裝 1.1 版本的 numpy :
conda install numpy=1.10
移除一個 package:
conda remove package_name
升級 package 版本:
conda update package_name
查看全部的 packages:
conda list
若是你記不清 package 的具體名稱,也能夠進行模糊查詢:
conda search search_term
默認的環境是 root,你也能夠建立一個新環境:
conda create -n env_name list of packages
其中 -n
表明 name,env_name
是須要建立的環境名稱,list of packages
則是列出在新環境中須要安裝的工具包。
例如,當我安裝了 Python3 版本的 Anaconda 後,默認的 root 環境天然是 Python3,可是我還須要建立一個 Python 2 的環境來運行舊版本的 Python 代碼,最好還安裝了 pandas 包,因而咱們運行如下命令來建立:
conda create -n py2 python=2.7 pandas
細心的你必定會發現,py2 環境中不只安裝了 pandas,還安裝了 numpy 等一系列 packages,這就是使用 conda 的方便之處,它會自動爲你安裝相應的依賴包,而不須要你一個個手動安裝。
進入名爲 env_name 的環境:
source activate env_name
退出當前環境:
source deactivate
另外注意,在 Windows 系統中,使用 activate env_name
和 deactivate
來進入和退出某個環境。
刪除名爲 env_name 的環境:
conda env remove -n env_name
顯示全部的環境:
conda env list
當分享代碼的時候,同時也須要將運行環境分享給你們,執行以下命令能夠將當前環境下的 package 信息存入名爲 environment 的 YAML 文件中。
conda env export > environment.yaml
一樣,當執行他人的代碼時,也須要配置相應的環境。這時你能夠用對方分享的 YAML 文件來建立一摸同樣的運行環境。
conda env create -f environment.yaml
至此,你已跨入 Anaconda 的大門,後續就能夠徜徉在 Python 的海洋中了。
祝學習愉快!
注:本文代碼示例參考自Udacity數據分析課程之Anaconda章節。
若是你想Python寫出風格優美的文章,請參考左手程序員,右手做家:你必須會的Jupyter Notebook
若是你想用Python作一些數據分析,但不知道怎麼開始,請參考系列文章Python數據分析的起手式