最新版本請見:https://chenhsieh.com/post/bioinfo/03-anaconda/
這篇繼續進行啟程前的準備,雖然我在引言中強調過不見得要寫程式,只要執行現成的程式碼或套件來完成剛好需要的分析,所使用的程式碼與套件還是需要已經安裝好的程式語言環境來執行。而且有時候執行他人的腳本,還是需要稍微看得懂語法,才知道如何適當地修改錯誤之處或是改成適合自己使用的樣子。
在下定決心要稍微學點程式之後,這時候通常會有的問題就是,我該從什麼語言開始學比較好呢? 學長說 python 就業機會多,隔壁實驗室的都用 R 語言,搞創業的潮潮推薦 Ruby,技術控則講著 GO 跟 Rust。我會說每種都很棒,重點在於培養程式邏輯腦以及快速切換思維的能力,網路上自學資源超級多,找堂免費課程跟著學下去絕對沒問題。
針對生物資訊的部分來說入門以 python、R 為佳,因為使用者人數眾多,遇到什麼問題通常輸入關鍵字搜尋就可以找到答案,而且有很多工具或是一條龍式的套件,操作起來會很方便。進階的話有語法簡潔的 Perl、前輩致力推廣的 Julia。以下便會簡單地帶過 python 的安裝資源推薦。
沒錯,就是在滑水,因為實際語言教學的話寫不完,我也沒資格寫,這份小指南旨在做個小小敲門磚,減低門檻後,修行之路還是要自己走下去。
Python 的核心十分簡潔,許多數學分析與繪圖功能都是額外的套件所提供,需要使用的時候才匯入或安裝。針對社群開發的科學分析套件可能有幾百種,要使用之前還要先找到正確的套件名稱才可以安裝使用。
Anaconda 就是一款直接幫你把資料科學相關套件通通準備好的選擇,從資料匯入、資料整理、數學分析、機器學習、甚至視覺化繪圖工具都包在裡面。開發環境上則包括了不同語言通用的 jupyter 筆記本、R studio 等等,下方可以看到更實際的使用場景。別再猶豫了,馬上點進 Anaconda 的下載連結,安裝起來吧!
Anaconda Python/R Distribution - Free Download
選擇相對應的作業系統平台之後,有不同的 python 版本供選擇,左側的 Python 3.7 是比較通用保險的選擇。但是還是要有點心理準備,有些大牌老套件其實只能在 2.7 環境執行,或者是 2019 年發布的生資套件也時常會出現其中藏有一兩行舊語法而無法執行,這種情況可能還是要手動進入套件原始碼中除錯,再回到 Python 3.7 環境執行。
在 Mac 上面以 pkg 檔案安裝
大概會需要 2G 的空間來安裝。
安裝過程順便廣告 PyCharm 的整合式開發環境 (IDE),可以自己決定要不要嘗試,我們明天也會介紹另外的 IDE 選擇。
安裝完畢的初次開啟。
Home 標籤中有各式常用工具的啟動按鈕,可以想成是不同風格的辦公桌,有的桌子抽屜大一點又適合放在轉角,有的則是桌上有層板,設計目的略有不同,但是通常不影響關鍵的辦公功能。
其中 Jupyter Notebook (上左二) 深受許多資料科學家歡迎,因為可以快速地執行片段區塊內的程式碼,同時還可以如下圖般用 Markdown 的方式來寫數學式或註解思路。Anaconda 的主頁面還有其他還有小而美的 Spyder、可以方便看各種參數的 RStudio 等等不同開發工具,等著你來探索。
(在 JupyterLab 中執行程式,透過 Markdown 撰寫註解紀錄想法)
Anaconda 左側第二個 Environment 標籤中則會顯示當前環境中各種不同的套件的安裝狀況,可以想成是辦公桌上面自己選放的文具、總機電話、或印表機,這些實際提供功能的文具清單,沒有他們的話根本無法辦公。而所謂的環境就是把上述的文具清點打包,讓你即使換辦公桌或辦公室,或者換個人帶了一樣的業務來坐這張辦公桌,一切依然可以順利執行。使用環境的好處多多,可以避免新安裝的套件干擾作業系統運行,也可以確保所撰寫程式碼的可再現性。
第三個標籤中有附上各種學習資源。
第四個標籤則是各大相關社群,教學學不到的問社群,想更上一層樓參加社群活動就對了!
希望這樣的簡介可讓大家理解 Anaconda 的值得之處!嘗試過後,記得回來告訴我你最喜歡 Anaconda 的地方吧!
The R Project for Statistical Computing
Anaconda | The World's Most Popular Data Science Platform
關於作者
謝晨 (Chen Hsieh),臺大園藝暨景觀學系研究所碩士。讀碩士前的興趣是懷著寫點程式妄圖解決農業問題的夢想參加比賽,拿了幾個黑客松與 Open Data 創新應用競賽的獎,卻都沒有勇氣將項目經營下去;研究所期間的興趣轉換成讀學術期刊的出刊電子報。靠著這些興趣當選 107 學年的臺大優秀青年,畢業後在農場旁的研究館辦公室寫點東西,希望可以跟世界分享生物資訊與園藝的樂趣!
感謝選擇匿名的朋友協助校閱初稿與提供意見,也敬請各位讀者不吝指教!
• Website: ChenHsieh.com