大數據文摘出品
編譯:李佳、Don FJ、湯圓、雲舟
從Python、R等程式語言到以Git為例的版本控制系統甚至Unix Shell等命令行工具,數據科學家的武器庫現在越來越豐富了,在個人計算機上同時使用這些武器可能會對新入門的數據科學家們造成不小的困擾,本文就將帶你學習這些數據科學武器的配置方法。
在Datacamp這樣的在線交互培訓和教育平臺上學習之後,下一步要做的就是使用自己的計算機應用Python,R,Git,或者Unix Shell中的技巧。然而,怎樣準確地知道不同的項目需要什麼樣的準備工作呢?本教程就將幫助你了解需要安裝哪些插件和軟體,它包括:
Anaconda Python的優勢及其在作業系統中的安裝。
同時使用R和RStudio的好處及其在作業系統中的安裝。
Unix Shell的優勢及其使用方法。
Git的優勢及其在作業系統中的安裝。
接下來,讓我們開始學習吧!
Python
為了使用Python,首先你需要在電腦中安裝它。網絡上有許多不同版本的python,但是對於數據科學來說,Anaconda Python發行版是使用最廣泛的。
Anaconda的優點
Anaconda是一個包管理器,也是一個環境管理器,更是一個包含許多開放源碼包的集合的Python發行版。Anaconda的安裝附帶了許多軟體包,如numpy、scikit-learning、scipy以及pandas,這也是安裝Jupyter Notebooks的推薦方法。
Jupyter Notebooks
http://jupyter.org/install.html
下圖顯示了一個正在運行的Jupyter Notebooks。Jupyter Notebooks既包含代碼,也包含豐富的文本元素,如圖表、連結和方程式。
更多Jupyter Notebooks知識:
https://www.datacamp.com/community/tutorials/tutorial-jupyter-notebook
使用Anaconda的一些其他好處:
如果安裝Anaconda後需要額外的軟體包,可以使用Anaconda的軟體包管理器conda或pip。這是非常便捷的,因為你不必自己管理多個包之間的依賴關係。Conda甚至可以輕鬆地在Python 2和3之間切換。
Anaconda附帶了Python的集成開發環境Spyder。集成開發環境(Integrated Development Environment)是一種編碼工具,它允許你編寫、測試和調試代碼,因為它們通常提供代碼補全、代碼高亮、資源管理和調試工具以及許多其他功能。還可以將Anaconda與其他Python集成開發環境集成在一起,包括PyCharm和Atom。
更多關於Python集成開發環境的信息https://www.datacamp.com/community/tutorials/data-science-python-ide
如何安裝Anaconda(Python)
下面的連結將教你在作業系統上安裝Anaconda。
在Mac上安裝:
https://www.datacamp.com/community/tutorials/installing-anaconda-mac-os-x
在Windows上安裝:
https://medium.com/@GalarnykMichael/install-python-on-windows-anaconda-c63c7c3d1444
R語言
大多數使用R程式語言的人也安裝了RStudio。RStudio集成開發環境(IDE)通常被認為是使用R 語言最簡單、最高效的方法。
RStudio的優點
安裝R語言後,你就可以使用R語言提供的功能和項目啦,還可以在R解釋器中構建和運行命令。RStudio可提供一個完整的,與R解釋器完美融合的開發環境。
打開RStudio時,屏幕如上圖所示。四個窗格分別是:(a)一個文本編輯器。(b)一個開發環境的控制面板。(c)R解釋器。(d)幫助窗口和包管理系統。這些特性使得它能夠成為在你安裝R語言之後真正需要的RStudio。新手們經常問的一個問題是如何在R中安裝軟體包。下面的視頻演示了使用RStudio的包管理器安裝tidyverse的一個方法。
你可以在Datacamp的兩個課程系列中了解更多RStudio的特性。
學習使用RStudio集成開發環境:
第1部分:
https://www.datacamp.com/courses/working-with-the-rstudio-ide-part-1
第2部分:
https://www.datacamp.com/courses/working-with-the-rstudio-ide-part-2
如何安裝R和RStudio
下面是介紹如何在作業系統上安裝R和RStudio的一些連結。
在Mac中安裝R和RStudio:
https://medium.com/@GalarnykMichael/install-r-and-rstudio-on-mac-e911606ce4f4
在Windows中安裝R和RStudio:
https://medium.com/@GalarnykMichael/install-r-and-rstudio-on-windows-5f503f708027
Unix Shell
導航目錄、複製文件、使用虛擬機等都是數據科學家工作的日常。Unix Shell常被用於完成這些任務。
Unix Shell的一些用法
許多雲計算平臺都是基於Linux的(利用Unix Shell的特性)。例如,如果您想在Google Cloud上建立一個數據科學環境,或者在使用Jupyter Notebooks進行深度學習,都需要一些Unix Shell知識。有時可能也會需要Windows虛擬機,但它並不常用。
Windows虛擬機:
https://www.datacamp.com/community/tutorials/aws-ec2-beginner-tutorial
Unix Shell裡面有很多有用的指令,比如 wc 指令能夠計算文件中的字數和行數、cat指令能夠拼接文件、head和tail指令能夠把一個大文件分割成許多小文件等等。
在數據分析中八個最有用的Shell指令:https://www.datacamp.com/community/tutorials/shell-commands-data-scientist
Unix Shell是個有用的工具,在實踐中你能經常發現Unix Shell與其他的語言和技術結合使用,在本文中也有很多這樣的例子。
你會經常看到Unix Shell和其他的技術結合使用的情況。比如,在Jupyter文檔裡,你會經常遇到Shell命令行+Phthon代碼的組合。在Jupyter文檔裡如果你想調用Shell命令的話,輸入!然後接著寫shell語句即可實現相應命令的調用。在下面的代碼裡,shell命令ls (這個命令可以列出當前路徑下的所有文件)被賦給了python變量myfiles。
myfiles = !ls
下面這張圖裡的Python代碼能夠將多個數據集合併到一起。注意在這個Jupyter文檔中紅框裡的部分,它就是一個Unix Shell命令。
請注意,上圖中的例子並不是什麼特殊用法,我們只是通過它來告訴大家Unix Shell是怎麼用的。如果大家意猶未盡還想多學一點Unix和數據科學相關的技術的話,我們強烈推薦Datacamp上的入門課程《Introduction to Shell for Data Science》 ,免費的哦。課程中會教授很多大牛數據科學家都不知道的神奇秘技,在實際工作中還是很有用的,值得一看。
課程連結:
https://www.datacamp.com/courses/introduction-to-shell-for-data-science
Mac系統中Unix Shell使用
Mac本來就是基於Unix開發的,所以生來就自帶Unix Shell功能。但是Unix系統的衍生版本太多了,系統和系統之間的Unix Shell指令就會稍有差別。有時候你會發現換了個電腦或者換了個系統之後,很多你熟用的指令就用不了了,比如說wget。為了解決這個問題,Mac上面有人做了一個Homebrew軟體來對其進行管理,就像R語言的包用RStudio管理、Python的包用Anaconda進行管理一樣方便。
如何安裝和使用Homebrew:
https://www.datacamp.com/community/tutorials/homebrew-install-use
Windows系統中的Unix Shell
Windows本身沒有Unix Shell功能,但還是能夠通過安裝一些軟體來在Windows中使用Unix Shell。Git on Windows上就有一些可選的Unix工具,安裝了之後就能在cmd裡愉快的使用Unix Shell了。除此之外,Gnu on Windows和Cygwin(最小100mb)都可以讓Windows上運行Unix Shell。
Gnu on Windows
https://github.com/bmatzelle/gow
Git on Windows
https://hackernoon.com/install-git-on-Windows-9acf2a1944f0
Git
Git是目前最流行的版本控制系統,在各種公司和項目中使用極其頻繁。Git能夠記錄用戶對項目的任何修改,所以用戶能夠回滾項目到之前的任意版本。Git能夠幫你更好的進行團隊項目的開發,在很多工作場景都能發現Git的身影。學習Git的好處包括:
記性好:只要是Git管理起來的工程就不會丟,什麼時候想看看以前的樣子都妥妥的
衝突避免:團隊合作中,如果你的修改和別人的修改有衝突的話,Git會提示你,而不是無腦覆蓋,這樣就能夠儘量避免合作場景中由於修改衝突而導致的工程覆蓋問題
同步妥:Git跨平臺能力很好,在什麼系統上都能用Git管理項目,所以在一個跨平臺多人合作的團隊項目中用著特順手
開源輕鬆:Git能讓R和Python開源包的開發更容易
和其他技術的集成
Git和其他技術也經常能混搭使用。之前咱們說過RStudio IDE(回顧一下看這裡https://support.rstudio.com/hc/en-us/articles/200532077-Version-Control-with-Git-and-SVN),它大概是目前最好用的R語言編程環境,在RStudio裡面就有版本控制的功能,而且大多數的Python IDE裡也都有版本控制功能。你以為他們會下老本自己開發一個版本控制軟體?別傻啦,它們就是把Git集成起來而已,簡單粗暴又有效。
RStudio IDE
https://support.rstudio.com/hc/en-us/articles/200532077-Version-Control-with-Git-and-SVN
如果你想學更多的Git在數據科學中的使用方法和技術的話,我們推薦您去看DataCamp上的課程 《Introduction to Git for Data Science》,還是免費的哦。
Introduction to Git for Data Science
https://www.datacamp.com/courses/introduction-to-git-for-data-science
安裝Git
下面的連結教你怎麼安裝Git,有Mac和Windows版本:
在蘋果系統上安裝Git
https://hackernoon.com/install-git-on-mac-a884f0c9d32c
Install Git on Windows
在Windows系統上安裝Git:
https://medium.com/m/global-identity?redirectUrl=https://hackernoon.com/install-git-on-Windows-9acf2a1944f0
這作者怎麼也不提供個Linux的,看不起我們嘛!燙燙燙燙燙,難過讓我溢出,所以為什麼是VS的溢出,算了算了……
總結
本教程主要講了怎麼在自己的計算機中搭建數據科學環境。值得注意的是,文中的技術通常是搭配出現的。如果對這個教程有任何問題的話,可以在作者的Twitter中留言詢問。當然了,也歡迎隨時查看作者的Github或者Medium博客來查看其他的安裝教程。
作者的Twitter
https://twitter.com/GalarnykMichael
作者的Github
https://github.com/mGalarnyk/Installations_Mac_Ubuntu_Windows
Medium博客
https://medium.com/@GalarnykMichael
相關報導:
https://www.datacamp.com/community/tutorials/setup-data-science-environment
【今日機器學習概念】
志願者介紹