本節書摘來自華章出版社《資料科學:r語言實作》一 書中的第1章,第1.1節,作者:r for data science cookbook 丘祐玮(david chiu),更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。
r語言是資料科學家的主流程式設計語言。基于著名的資料分析網站kdnuggets的民意測驗,3項(2012年到2014年)的調查顯示,r語言在資料分析、資料挖掘和資料科學領域中是最受歡迎的語言。對許多資料科學家來說,r語言不僅是一門程式設計語言,而且相關軟體還提供了互動式的開發環境,支援運作各種資料分析任務。
r語言在資料操作和分析方面有許多優勢。下面是3個最顯著的優勢。
開源并且免費:使用者使用sas或者spss需要購買使用許可。而使用者使用r語言是免費的,并且可以友善地學習如何實作每一個函數源代碼中的統計算法。
強大的資料分析函數:r語言在資料科學領域很出名。許多生物學家、統計學家和程式設計人員在使用cran(comprehensive r archive network)全球釋出之前,就把他們的模型封裝在r程式包裡了。這種機制允許任何使用者通過cran包下載下傳和安裝,開展分析項目。
易于使用:由于r語言是一種自解釋的進階語言,使用r語言程式設計非常簡單。r語言使用者隻需要知道如何使用r函數,并借助強大的文檔即可知道每一個變量如何工作,而不需要了解其背後複雜的數學知識,就可以輕松地執行進階資料分析任務。
這些優勢使得複雜的資料分析變得更加簡單易行。對此,r語言使用者都深信不疑。而且,r語言尤其适合基礎使用者或者開發人員。對于一名r語言使用者,我們隻需知道函數如何工作,而不需要知道函數實作的具體知識。類似于spss,我們可以通過r語言的互動式shell,運作各種類型的資料分析任務。另外,作為一名r語言開發人員,我們可以編寫函數來建立新的模型,甚至可以把實作的函數封裝在包中。
本書并不會講解如何從零開始編寫r程式。相反,本書的目标是要讨論如何成為一名r語言開發人員。本章的主要目的是向使用者展示如何定義函數,進而加速分析過程。我們首先介紹如何建立函數,然後介紹r環境,接着講解如何建立比對參數。 本章的内容還會涵蓋如何執行r語言函數式程式設計,如何建立進階函數,例如中綴操作符和替代,以及如何處理錯誤和調試函數。