Python Anaconda使用

選擇Python 科學計算器發行版html

Python用於科學計算的一些經常使用工具和庫


  • IPython-加強的交互環境:支持變量自動補全,自動縮進,支持 bash shell 命令,內置了許多頗有用的功能和函數
  • Spyder、Wing IDE或Eclipse/Pydev:集成開發環境
  • NumPy-數學計算基礎庫:N維數組、線性代數計算、傅立葉變換、隨機數等。
  • SciPy-數值計算庫:線性代數、擬合與優化、插值、數值積分、稀疏矩陣、圖像處理、統計等。
  • SymPy-符號運算
  • Pandas-數據分析庫:數據導入、整理、處理、分析等。
  • matplotlib-會圖庫:繪製二維圖形和圖表
  • Chaco-交互式圖表
  • OpenCV-計算機視覺庫
  • TVTK-數據的三維可視化
  • Cython-Python轉C的編譯器:編寫高效運算擴展庫的首選工具
  • BioPython-生物科學

 

Python科學計算髮行版


  • Python(x,y)
    當前最新版本:2.7.6.1 (05/30/2014),支持Windows和Python2.7.6。
    其庫索引列出了所支持的170+Python27庫。
  • WinPython
    當前最新版本:2.7.6.4和3.3.5.0 (04/2014),支持Windows和Python2.7.六、3.3.5。
    其庫索引列出了所支持的60+Python27庫。
    其庫索引列出了所支持的60+Python33庫。
  • Enthought Canopy(Enthought Python Distribution)
    當前最新版本:1.4.1 (06/11/2014),支持Linux, Windows, Mac平臺和Python2.7.6。
    其庫索引列出了所支持的150+測試過的Python庫。
  • Anaconda
    當前最新版本:2.0.1 (06/12/2014),支持Linux, Windows, Mac平臺和Python 2.六、2.七、3.三、3.4。
    其庫索引列出了所支持的195+流行Python庫。

Python(x,y)和WinPython都是開源項目,其項目負責人都是Pierre Raybaut。按Pierre本身的說法是「WinPython不是試圖取替Python(x,y),而是出於不一樣動機和理念:更靈活、易於維護、可移動、對操做系統侵略性更小,可是用戶友好性更差、包更少、沒有同Windows資源管理器集成。」。參考1裏面說Python(x,y)不是很穩定,此外看它目前的更新不是很頻繁,確實有可能Pierre後來的工做重心放在WinPython上了。python

 
Canopy和Anaconda是公司推的,帶免費版和商業版/插件。這兩款發行版也牽扯到一我的,那就是 Travis Oliphant。Travis是SciPy的原始做者,同時也是NumPy的貢獻者。Travis在2008年以副總裁身份加入Enthought,2012年以總裁的身份離開,創立了一個新公司continuum.io,並推出了Python的科學計算平臺Anaconda。Anaconda相對Canopy支持Python的版本更多,對Python新版本支持跟的很緊( Sage不支持Python3.x的理由是由於其依賴的SciPy還不支持Python3,而Anaconda卻實現了支持Python3.3和3.4,這就說明問題了),此外其在Linux平臺下(經過conda管理)安裝更方便。
 
 

1、爲何選擇Anaconda?

1.1 什麼是 Anaconda?

Anaconda是專一於數據分析的Python發行版本,包含了conda、Python等190多個科學包及其依賴項。做爲好奇寶寶的你是否是發現了一個新名詞 conda,那麼你必定會問 conda 又是什麼呢?web

1.2 什麼是 conda ?

conda 是開源包(packages)和虛擬環境(environment)的管理系統。shell

  • packages 管理: 可使用 conda 來安裝、更新 、卸載工具包 ,而且它更關注於數據科學相關的工具包。在安裝 anaconda 時就預先集成了像 Numpy、Scipy、 pandas、Scikit-learn 這些在數據分析中經常使用的包。另外值得一提的是,conda 並不只僅管理Python的工具包,它也能安裝非python的包。好比在新版的 Anaconda 中就能夠安裝R語言的集成開發環境 Rstudio。數組

  • 虛擬環境管理: 在conda中能夠創建多個虛擬環境,用於隔離不一樣項目所需的不一樣版本的工具包,以防止版本上的衝突。對糾結於 Python 版本的同窗們,咱們也能夠創建 Python2 和 Python3 兩個環境,來分別運行不一樣版本的 Python 代碼。bash

知道 是什麼(what) 的同時,咱們也須要問一問 爲何(why)。那麼,爲何要選擇用Anaconda呢?服務器

1.3 Anaconda 的優勢?

Anaconda的優勢總結起來就八個字:省時省心、分析利器。app

  • 省時省心: Anaconda經過管理工具包、開發環境、Python版本,大大簡化了你的工做流程。不只能夠方便地安裝、更新、卸載工具包,並且安裝時能自動安裝相應的依賴包,同時還能使用不一樣的虛擬環境隔離不一樣要求的項目。機器學習

  • 分析利器:Anaconda 官網中是這麼宣傳本身的:適用於企業級大數據分析的Python工具。其包含了720多個數據科學相關的開源包,在數據可視化、機器學習、深度學習等多方面都有涉及。不只能夠作數據分析,甚至能夠用在大數據和人工智能領域。函數

解決了 是什麼 以及 爲何 的問題後,下面讓咱們看一下 怎麼作(How)

說明一下conda的設計理念——conda將幾乎全部的工具、第三方包都當作package對待,甚至包括python和conda自身!所以,conda打破了包管理與環境管理的約束,能很是方便地安裝各類版本python、各類package並方便地切換。

參考:http://www.jianshu.com/p/169403f7e40c

 

 

根據提示進行安裝,完成後你大概會驚訝地發現電腦中多了好多應用,不用擔憂,咱們一項項來看:

  • Anaconda Navigator :用於管理工具包和環境的圖形用戶界面,後續涉及的衆多管理命令也能夠在 Navigator 中手工實現。
  • Jupyter notebook :基於web的交互式計算環境,能夠編輯易於人們閱讀的文檔,用於展現數據分析的過程。
  • qtconsole :一個可執行 IPython 的仿終端圖形界面程序,相比 Python Shell 界面,qtconsole 能夠直接顯示代碼生成的圖形,實現多行代碼輸入執行,以及內置許多有用的功能和函數。
  • spyder :一個使用Python語言、跨平臺的、科學運算集成開發環境。
修改Path變量

設置命令行:
新建一個變量:
Python27: D:\programFiles\Anaconda2
而後path增長:
python目錄和scripts目錄。


在cmd輸入python -v

PS C:\Users\a> Python -V
Python 2.7.14 :: Anaconda, Inc.
PS C:\Users\a>

 能夠看到輸出python版本是 Anaconda ,說明是Anaconda下面的python.

 

 

Spyder的最大優勢就是模仿MATLAB的「工做空間」。

 


Conda的包管理:

Conda的包管理就比較好理解了,這部分功能與pip相似。

 

# 安裝scipy
conda install scipy
# conda會從從遠程搜索scipy的相關信息和依賴項目,對於python 3.4,conda會同時安裝numpy和mkl(運算加速的庫)

# 查看已經安裝的packages
conda list
# 最新版的conda是從site-packages文件夾中搜索已經安裝的包,不依賴於pip,所以能夠顯示出經過各類方式安裝的包

 

前面已經提到,conda將conda、python等都視爲package,所以,徹底可使用conda來管理conda和python的版本,例如

# 更新conda,保持conda最新 conda update conda # 更新anaconda conda update anaconda # 更新python conda update python # 假設當前環境是python 3.4, conda會將python升級爲3.4.x系列的當前最新版本

補充:若是建立新的python環境,好比3.4,運行conda create -n python34 python=3.4以後,conda僅安裝python 3.4相關的必須項,如python, pip等

設置國內鏡像

若是須要安裝不少packages,你會發現conda下載的速度常常很慢,由於Anaconda.org的服務器在國外。所幸的是,清華TUNA鏡像源有Anaconda倉庫的鏡像,咱們將其加入conda的配置便可:

# 添加Anaconda的TUNA鏡像 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ # TUNA的help中鏡像地址加有引號,須要去掉 # 設置搜索時顯示通道地址 conda config --set show_channel_urls yes

執行完上述命令後,會生成~/.condarc(Linux/Mac)或C:\Users\USER_NAME\.condarc文件,記錄着咱們對conda的配置,直接手動建立、編輯該文件是相同的效果。


conda cheatsheet:
https://conda.io/docs/_downloads/conda-cheatsheet.pdf



conda create -n your_env_name python=X.X(2.七、3.6等)命令建立python版本爲X.X、名字爲your_env_name的虛擬環境。your_env_name文件能夠在Anaconda安裝目錄envs文件下找到。

四、使用激活(或切換不一樣python版本)的虛擬環境。

 

若是建立新的python環境,好比3.4,運行conda create -n python34 python=3.4以後,conda僅安裝python 3.4相關的必須項,如python, pip等,若是但願該環境像默認環境那樣,安裝anaconda集合包,只須要:

# 在當前環境下安裝anaconda包集合 conda install anaconda # 結合建立環境的命令,以上操做能夠合併爲 conda create -n python34 python=3.4 anaconda # 也能夠不用所有安裝,根據需求安裝本身須要的package便可


# 建立一個名爲python34的環境,指定Python版本是3.4
conda create --name python34 python=3.4

# 激活某個環境
activate python34 # for Windows
source activate python34 # for Linux & Mac

deactivate python34 # for Windows
source deactivate python34 # for Linux & Mac

# 刪除一個已有的環境
conda remove --name python34 --all
---------------------
 

Conda包管理
# 安裝xxxx
conda install xxxx

# 查看當前環境下已安裝的包
conda list

# 查看某個指定環境的已安裝包
conda list -n python34

# 查找package信息
conda search numpy

# 安裝package
conda install -n python34 numpy # 若是不用-n指定環境名稱,則被安裝在當前活躍環境 也能夠經過-c指定經過某個channel安裝
 


Conda 更新
# 更新package
conda update -n python34 numpy

# 刪除package
conda remove -n python34 numpy

# 更新conda,保持conda最新
conda update conda

# 更新anaconda
conda update anaconda

# 更新python
conda update python
 

列舉當前全部環境


Get a list of all my environments, active environment is shown with *conda info --envs conda env list


Conda 源
# 添加Anaconda的TUNA鏡像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# TUNA的help中鏡像地址加有引號,須要去掉

# 設置搜索時顯示通道地址conda config --set show_channel_urls yes---------------------  

相關文章
相關標籤/搜索