李雄英

摘 要:在計算機科學和大數據時代的背景下,統計學作為我國高等教育新的一級學科,在近幾年有了跨越式的發展。而R語言作為常用統計軟件,也越來越受到學術界的高度關注和認可。R語言具有操作簡單、功能全面、統計準確等優點,在統計學的教學過程中也被廣泛使用。文章從統計學教學入手,探討在統計教學過程中R語言的運用,而且與例子相結合,來進一步說明R語言軟件在統計教學中的優勢。
關鍵詞:統計學;R語言;教學
中圖分類號:G642 文獻標志碼:A 文章編號:2096-000X(2017)01-0050-03
Abstract: Under the background of computer science and big data, statistics, as a new first-level discipline in higher education of our country, has achieved leap-and-bound development in recent years. And R language, as a common statistical software, has attracted more and more attention and recognition by the academic community. R language has the advantages of simple operation, comprehensive function, accurate statistics and so on, and is widely used in the teaching of statistics. This article starts from the teaching process of statistics, discusses the application of R language, and further illustrates the advantages of R language software, combined with examples.
Keywords: statistics; R language; teaching
R語言是屬于GNU系統的一個自由、免費、源代碼開放的軟件,它主要用于統計計算和統計制圖[1]。隨著統計技術的迅速發展,特別是伴隨著大數據時代的到來,現代數據處理方法解決問題能力的深度和廣度都有了很大的拓展,而選擇一個合適的統計軟件便成了大部分統計工作者需要關注的事情。隨著計算機技術和統計技術的發展,統計軟件不斷推陳出新,且各具特色。隨著全球對知識產權的保護不斷提高,現在的開放源代碼逐漸開始形成一種市場,而R語言正是在這個大背景下發展起來的,R語言是以S語言環境為基礎,并且由于其鮮明的特色,它一出現便受到了統計專業人士和企業界的青睞,正成為數據處理里相當標準的統計軟件[2,3]。
如今,大數據時代已然來臨,尤其是在金融、電信、醫療和物流等行業,幾乎已經到了“數據就是業務本身”的地步,也有更多的統計分析師希望深入了解和分析大數據,且近幾年Hadoop、NoSQL、數據分析與挖掘、數據倉庫、商業智能以及開源云計算架構等逐漸成為了熱點話題。R語言軟件不僅在社會上的影響力逐漸提升,而且在高校的教學中也逐漸被重視。
一、R語言的教學優勢
(一)R語言軟件的特點
R語言是一套比較完整的擁有數據處理、計算和制圖的軟件,其功能包括:數據存儲和數據處理系統、數組運算,屬于完整連貫的統計分析工具,而且它的統計制圖功能、簡便而強大的編程語言功能、可操縱數據的輸入和輸出功能,均可實現分支、循環,并且用戶可自定義。R語言作為一種常見的統計分析軟件,是集統計分析與圖形顯示于一體的,相比于其他統計分析軟件,R語言還有以下特點:
1. 自由。這里的自由意味著軟件是完全免費的,而且它的源代碼是開放的。到目前為止,R語言的包有9275個,使用者可以在其鏡像或者其它學習網站中下載安裝程序、相應的源代碼、包和文檔材料。
2. 可編程。與其它統計軟件相比,如SPAA、SAS等,R語言的特點中有一個讓程序員都喜歡的特點是——其可編程。作為一個開放的統計編程軟件,它的語法通俗易懂,讓大部分學者容易學會且掌握其語法,最重要的是我們可以編制自己的函數來擴展現有的語言。
3. 更新快。所有的有關R的函數和數據集是保存在程序包里面的,只有當一個包被載入時,它的內容才可以被訪問。一些常用、基本的程序包已經被收入了標準安裝文件中,隨著新的統計分析方法的出現,標準安裝文件中所包含的程序包也隨著版本的更新而不斷變化,而且更新的速度非常快。
4. 強互動性。一般情況下使用的是R語言軟件,除了圖形輸出是在另外的窗口處,它的輸入、輸出窗口都是在同一個窗口進行的,而且輸出的圖形可以直接保存為多種圖片格式,還可以直接保存為PDF文件。現在也有很多學者喜歡使用Rstudio,它的互動性會表現得更加明顯,我們直接可以在它的界面上得到需要的圖像,顯示下載過的包和編程歷史等信息。
5. 跨平臺。這里所謂的跨平臺的,主要是指R語言有較好的兼容性,他可以在我們的Linux和Windows,甚至是Mac OS運行,這是很多統計軟件所做不到的。
(二)R語言在統計教學中的優勢
統計學的研究過程大概可以分為以下五個階段:收集數據、處理數據、分析數據、解釋數據、得到結論。而統計學的教學工作也是相應地按照這五個階段的順序依次展開的,鑒于Excel軟件的統計功能易學易用,所以大部分教材或者學者都會選擇這個軟件,但是,從軟件本質上來說,Excel是一款電子表格軟件,而非專門的統計軟件,它僅僅能夠處理一些簡單的統計計算,對于稍微復雜的問題便無從下手。在上述五個階段中,R語言主要應用在處理數據和分析數據這兩個階段,處理數據階段主要包括數據的預處理、數據的整合以及數據的圖像顯示等方面。分析數據階段主要包括一些基本統計方法的內容,如參數估計、假設檢驗、線性回歸等。對于大部分統計專業的學生來說,處理數據的能力非常重要。
對于堅持理論與應用相結合的大學或者專業,尤其是特別強調和訓練各種與統計、數據分析相關計算機軟件的操作技能的專業,R語言的優勢會展現得淋漓精致。在教學上,教師可以通過對R語言的教學,使學生不僅僅停留在對基礎理論知識的掌握上,更重要的是更加深入了解和掌握統計數據處理、運用統計軟件對實際問題具體分析的能力上,而且教師可以利用R語言軟件進行數據的可視化教學。教師在教學中采用R語言后,可以把各種統計數據通過可視化后更加直觀的展示給學生,使抽象的理論變得形象化。使用R語言進行教學可以很好的將課堂上講授的理論、案例分析與統計軟件結合起來。與此同時,還可以增加學生學習理論的積極性,最大限度的發揮學生的主觀性,以軟件促進理論學習,學以致用,能獲得最優的學習效果。
二、基于R語言的統計教學案例分析
(一)R語言相關的統計分析包
啟動R語言軟件后,我們可以看到R GUI (graphic user's interface)的主窗口,它主要由以下三部分組成:主菜單、工具條和R console(R的運行窗)。對于R語言,CRAN(Comprehensive R Archive Network)提供了許多便于統計分析的宏包:例如:stable-分布廣義回歸分析、VaR-風險值分析、tseries-時間序列分析、matrix-矩陣運算、cinterface-C與R的接口、foreign-讀寫由S、Minitab、SAS、SPSS和Stata等軟件的數據、normix-混合正態分布分析、nortest-正態分布的Anderson-Darling檢驗、MCMCpack-基于Gibbs抽樣的MCMC抽樣方法、fracdiff-分數差分模型的極大似然估計[4]。
(二)實例分析
例1. 判斷數據是否服從正態分布
在判斷數據是否服從正態分布時,經常使用到的是shapiro.test()檢驗、ks.test()檢驗等,也可以使用nortest包中的lillie.test(),它可以實行更精確的Kolmogorov-Smirnov檢驗,ad.test()進行Anderson-Darling正態性檢驗等。而且也可以使用fBasics包,其中normalTest()可進行Kolmogorov-Smirnov正態性檢驗等等。最簡單的還是使用概率直方圖或者QQ圖直接判斷,下面隨機產生10000個服從標準正態分布的隨機數,并作出他們的概率直方圖,然后再添加正態分布的概率密度曲線,其程序和圖如下:
x=rnorm(10000) #隨機產生10000個標準正態分布的隨機數
hist(x,prob=T,ylim=c(0,0.5),main="") #作概率直方圖
lines(density(x)) #添加概率密度曲線
qqnorm(x,main="");qqline(x) #作QQ圖
這是隨機生成的服從正態分布的隨機數的概率直方圖,當我們獲得一組數據,并且需要判斷它是否服從正態分布時,可以通過作直方圖的方式看數據是否存在正偏或者負偏,從而判斷數據是否服從正態分布。
例2. 進行t檢驗
t檢驗分為單樣本均值的t檢驗和兩樣本均值的t檢驗,它的代碼均為t.test(),只是在兩樣本均值的t檢驗中需要求兩組數據服從正態分布,而且還要求兩組數據相應的總方差相等,即滿足方差齊性。它們的代碼分別是:t.test(data1)、t.test(data2~data3,data=data)。
例3. 使用R語言做回歸分析
上面的例子只是統計分析中較常見且簡單的例子,實際上,R語言能夠處理統計基本模型,而且處理起來也不比其他統計軟件差。在我們的實際教學過程中,與傳統的講授法教學相比,使用R語言軟件進行教學不僅可以讓學生對統計、數據分析的原理、方法、技術和應用有較好的把握,而且也可以讓學生較好的操作和運用計算機進行統計、數據分析軟件進行數據分析,以及讓學生具備規范的寫作數據分析報告的能力。
三、結束語
在大數據時代的今天,是否擁有數據分析能力以及處理數據能力直接影響著一個統計學者能否真正融入數據化的時代。而R語言這個被廣泛使用的統計工具也逐漸被人接受和應用,特別是在大學的統計教學中。R語言在統計教學過程中最大的優勢是它能夠將非常抽象的統計學概念轉化為直觀具體的圖形或者函數,從而使得枯燥無味的統計學學習變得更加生動有趣。在教學過程中,可以針對學生的學習興趣對R語言的應用過程進行優化,從根本上提高學生對統計學的掌握水平,從而培養綜合性和應用型人才。
參考文獻
[1]王斌會.多元統計分析及R語言建模[M].廣州:暨南大學出版社,2015.
[2]張哲.淺談R語言在生物統計學教學中的應用[J].教育教學論壇,2013(07):54-55.
[3]奚寧.R語言在統計學教學中的運用[J].科技咨詢,2012(01):97-98.
[4]吳喜之.復雜數據統計方法:基于R的應用[M].北京:中國人民大學出版社,2013.