關(guān)于anaconda你所需要知道的二三事

anaconda.jpg
學(xué)習(xí)python機(jī)器學(xué)習(xí),我們似乎總繞不開anaconda,因?yàn)楹芏噘Y料或教程中總建議或者使用anaconda,其實(shí)不用該工具也可以實(shí)現(xiàn)數(shù)據(jù)分析與機(jī)器學(xué)習(xí)等內(nèi)容,比如在我的一篇專欄文章中《6個(gè)套路入門ML:用鳶尾花data建立python機(jī)器學(xué)習(xí)的初步印象(一)》(https://zhuanlan.zhihu.com/p/26802995) ,不過在此之前先要安裝很多與數(shù)據(jù)相關(guān)的模塊包,如Numpy, Scipy,matplotlib,pandas,sklearn等等。有些包在python3.X的版本下還不好裝(具體見我的《6個(gè)套路入門ML》文章有一些介紹),這就需要有一個(gè)集成的管理工具,讓我們把與數(shù)據(jù)分析有關(guān)的包安裝好,省去了過多的麻煩。

(1)為什么安裝anaconda?

Anaconda不是語言,它只是python的一個(gè)集成管理工具或系統(tǒng),它把python做相關(guān)數(shù)據(jù)計(jì)算與分析所需要的包都集成在了一起,我們只需要安裝Anaconda軟件就行了,其它什么都不用裝,包括python軟件。Anaconda則是一個(gè)打包的集合,里面包含了720多個(gè)數(shù)據(jù)科學(xué)相關(guān)的開源包,在數(shù)據(jù)可視化、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等多方面都有涉及。不僅可以做數(shù)據(jù)分析,甚至可以用在大數(shù)據(jù)和人工智能領(lǐng)域。另外,安裝它后就默認(rèn)安裝了python、IPython、Jupyter notebook和集成開發(fā)環(huán)境 Spyder等等。

總之一句話,安裝anaconda讓我們省去了大量下載模塊包的時(shí)間,更加方便。

關(guān)于anaconda的安裝與使用,目前網(wǎng)上的資料很多,在這里不過多介紹,只是說一兩個(gè)關(guān)鍵的問題。

(2)anaconda的版本問題:選擇python2.7還是3.6?

由于Python有2和3兩個(gè)版本,因此Anaconda也在Python2和Python3的基礎(chǔ)上推出了兩個(gè)發(fā)行版,即Anaconda2和Anaconda3。Python3 被越來越多的開發(fā)者所接受,同時(shí)讓人尷尬的是很多遺留的老系統(tǒng)依舊運(yùn)行在 Python2 的環(huán)境中,因此有時(shí)你不得不同時(shí)在兩個(gè)版本中進(jìn)行開發(fā),調(diào)試。

如何在系統(tǒng)中同時(shí)共存 Python2 和 Python3 是開發(fā)者不得不面對的問題,一個(gè)利好的消息是,Anaconda 能完美解決Python2 和 Python3 的共存問題。

conda 是 Anaconda 下用于包管理和環(huán)境管理的命令行工具,是 pip 和 vitualenv 的組合。安裝成功后 conda 會默認(rèn)加入到環(huán)境變量中,因此可直接在命令行窗口運(yùn)行 conda 命令

如果你熟悉 virtualenv,那么上手 conda 非常容易,不熟悉 virtulenv 的也沒關(guān)系,它提供的命令就幾個(gè),非常簡單。我們可以利用 conda 的虛擬環(huán)境管理功能在 Python2 和 Python3 之間自由切換。

多版本切換

# 基于 python3.6 創(chuàng)建一個(gè)名為test_py3 的環(huán)境
conda create --name test_py3 python=3.6
# 基于 python2.7 創(chuàng)建一個(gè)名為test_py2 的環(huán)境
conda create --name test_py2 python=2.7
# 激活 test 環(huán)境
activate test_py2 # windows
source activate test_py2 # linux/mac
# 切換到python3
activate test_py3

更多命令,可查看幫助 conda -h

(3)anaconda自帶了一款編輯器spyder與pycharm的比較

相比較而言,個(gè)人認(rèn)為pycharm用起來更便捷,雖然spyder中所有的變量也都能顯示,方便調(diào)試,里邊還有ipython notebook,但是很細(xì)節(jié)的一些代碼寫作還是pycharm更便捷一些,比如引號””,spyder貌似無自動匹配機(jī)制,輸入一個(gè)引號還需輸入另一個(gè)引號。

強(qiáng)烈推薦anaconda+pycharm組合,因?yàn)閍naconda安裝的時(shí)候已經(jīng)默認(rèn)為你安裝了一大堆做數(shù)據(jù)分析常用的包,所以,直接在pycharm中把默認(rèn)解釋器改為anaconda中的python即可(在pycharm-》settings-》Project Interpreter里找到要改環(huán)境的項(xiàng)目,選中,然后右上側(cè)點(diǎn)擊齒輪,Add local, 選剛才新建環(huán)境里的python.exe , 我的在 C:\Anaconda2\envs\tensorflow\python.exe, 之后確認(rèn)即可)。

另外,只是針對數(shù)據(jù)分析與機(jī)器學(xué)習(xí),anaconda用起來更方便一些,對于python的其他用途,比如爬蟲、web開發(fā),pycharm更好一些。針對大型的web框架修改調(diào)試,還是需要個(gè)大型IDE。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容