Anaconda - 給見習分析師的就職禮物


正所謂工欲善其事,必先利其器。要作好的分析,你一定要準備好和了解你的工具。

有一群Data Scientist開始意識到無論傳統或是新的工具實在太多和太複雜,也不想再局限於只有SpreadSheet的世界,讓更多並非Software Engineer, Programmer出身的人增值自己,從數據中發現和分析他們一直好奇的事物,甚至解決業務和工程上的問題,而又不必是一個Software Experts或者Engineer,於是,這群人便創立了Anaconda Cloud。

為何筆者會介紹他們,不是因為收了稿費,而是這個團隊出產的Anaconda,是一個由Python支援的Open Data Science Platform,這個平台正正讓筆者受惠不少,筆者在早一兩年前,舊公司電腦的操作系統是Window,在安裝或導入一些Package遇到不少的問題,到現在服務的公司對軟件安裝亦有所限制,安裝Package的時候,也要做了不少手腳才可完成。最近得知這個Anaconda,讓我在幾分鐘內,便準備好我所需的工具,還記得筆者當年要花幾天的時間來弄好那些煩人的設定。相信有用過Python的讀者們都會經歷過這些痛苦,不過現在現在進場的人,因為Anaconda已為我們準備好上戰場用的武器。

想下載的朋友們,在他們的官方網站(https://www.continuum.io/downloads)根據你的Operating System,選擇合適的安裝檔來安裝Anaconda吧!我會建議各位安裝Python 3.6,因為Python 2.7快沒有Support了。途中它會問你想為個人還是所有用戶安裝,只要選"Just Me"就可以了。

完成後,你會看到很多很熟識的工具,也可能你看到的只是陌生的Logo,不要緊,我會介紹常用而實用給各位們。想安裝Package的朋友,不用擔心,因為它已經內置了所有常用的Package:NumPy, SciPy, Pandas, Scikit-Learn, NLTK, R-essentials等等,連筆者最近用來Build Dashboard的Flask也有,所以它真是初心者的恩物,為你提供整合了的資源,直接投入生產。



首先,Anaconda Cloud是一個官網的Shortcut,有興趣的朋友可以瀏覽一下。除了Anaconda Navigator,其他的都可以不用理會了,因為Anaconda Navigator已經把這些收納在一個Fancy的介面中,把它當Apps用就好了,讓你更快地在非常豐富的工具箱裡找到你想用的工具。在首頁中,有三個Application:Jupyter Notebook,Ipython Console, Spyder。




有些讀者未必知道Jupyter Notebook是什麼玩意,那我先簡單介紹一下,這玩意在早幾年前出現,令Python的用家們不一定只用Terminals或傳統的Editor去寫Script,反而用一個像記事本的方法去編程,筆者在碩士中也會用Jupyter去寫下一些Coding來記下學過的技巧(主要是R, Jupyter Notebook也可寫R的),你可以把分析的工序,折成每一段Coding而且獨立運作,和傳統Editor不同的是,不一定需要把全段Code運行一次,只需運行需要的便可以了。像下圖一樣,你會發現#的符號,其實它是用來指示"Data Mining Tutorial"這句是標題,##和###就是副和副副標題,那麼##...#就是副副...副標題了。我把工序分為三項準備Data,建模,可視化,如果我想調整模型的參數,只需要在第二項的Coding作更改和運行,便立刻顯示結果,十分方便。


當你寫好之後,還可以把它export出HTML,PDF的等格式,變成電子書,網頁的其中一頁,用作Presentation也有不錯的效果。成品如下:


另外的Ipython Console只是Python的Console而己,作即時運算用而已。而最後的Spyder,就像PyCharm, SubLime一樣為你提供完善的開發環境,來研發一些應用,例如Dashboard,Website,分析Pipeline都管用,讓你更方便運行測試你的Coding。




回到首頁後,左邊的Bar顯示的Environment和Projects暫時可以不用理會了。至於Learning就包括了Package和Python自己的Documentation,其實只是一個Shortcut而已。Community這個Tab就有一些的Forum,例如Stack Overflow, Matplotlib Forum,為毛沒有Cross-validated了,那算了自己Google一下就好了。




介紹就來到這裡了,希望這個整合了所有好東要的工具箱,會讓你在學習Python的時候,省去煩惱一些設定和Package上的時間,寫起上來也得心應手!




Comments

Popular posts from this blog

Boosting vs Bagging? 別再胡亂用了!

機器學習之陷阱 - Imbalance Class Classification

Excel VBA - 自動生成分析報告