黃新 王夢賢 周密


[摘 要] 在信息化和大數據背景下,統計學實驗教學中引入一種合適的統計軟件就變得十分重要。針對R軟件的優勢和統計學課程的特點,結合具體案例,探討了R軟件在統計實驗教學實踐中的應用,以此激發學生學習和使用R軟件的興趣,提高統計學的教學質量。
[關 鍵 詞] R軟件;統計學;實驗教學
[中圖分類號] G642 [文獻標志碼] A [文章編號] 2096-0603(2018)13-0068-02
統計學是高等學校許多專業的一門重要專業基礎課,結合近年我們統計學實驗教學經驗,以自由免費的R軟件為工具,使用案例式教學,讓學生從案例中真正體驗統計分析數據的整個過程,提高統計學的教學質量。
一、統計學課程
統計學是一門關于數據的搜集、分析、展示和解釋的科學,其研究內容包括描述統計和推斷統計兩大類。描述統計主要是對現象進行調查,將得到的大量數據加以整理、簡縮,制成統計圖表,并就這些數據的分布特征計算出一些概括性的數字。推斷統計是指利用樣本資料推斷總體特征的技術和方法,是在觀察資料的基礎上深入地分析、研究和推斷,以推知資料本身以外的情況和數量關系,為進行決策提供數據依據。主要有參數估計和假設檢驗兩種類型。
二、R軟件的優勢
R軟件屬于GNU系統的一個自由、免費、源代碼開放的軟件,由新西蘭奧克蘭大學的Robert Gentleman 和Ross Ihaka及志愿者共同開發的一種計算環境。R軟件在網站上可以自由下載,安裝簡單。R軟件擁有大量的統計程序包和統計計算函數,更新速度快,具有強大的數據處理能力和豐富的圖形展示功能。許多統計方法和技術都可以在R軟件中實現,如參數估計、假設檢驗、多元統計分析等。學生只需要根據實際問題,編寫和調用相應的函數,便可靈活地進行數據統計分析,甚至創造出新的統計計算方法。
三、R軟件的統計學實驗教學案例分析
R軟件是模擬實驗與統計計算的有力工具,把R軟件引入統計學教學中,將那些枯燥難懂的統計理論與有趣的統計實踐工作聯系起來,使統計理論教學變得妙趣橫生,從而大大提高學生的學習積極性和教學效率。
(一)R軟件在數據描述統計實驗教學中的應用
數據描述統計是通過計算統計量與繪制統計圖表等方法,可以更加直觀、方便地表述數據的分布特征。
1.產生模擬100名學生統計學(Score1)、線性代數(Score2)兩門課程的期末考試成績。
>Xuehao=seq(1609001,1609100)# 生成100名學生的學號(1609001至1609100)
>set.seed()#用于設定隨機數種子
>Score1=round(rnorm(100,mean=70,sd=15))#生成均值為80,標準差為5的100個正態分布的隨機整數 48 94 56 56 40 66 65 61 68 …… 55 83 72 86 65 77 60 66 55
>Score2=round(runif(100,min=40,max=100))#生成區間為[40,100]的100個均勻分布的隨機整數 54 70 49 47 80 88 94 65 86 80 ……75 60 84 57 44 41 88 77 52
>X=data.frame(Xuehao,Score1,Score2)#將期末考試成績匯總,生成數據框
>Zmean=colMeans(X)[c(“Score1”,“Score2”)]#求兩門課程期末考試的平均成績
>Zmean Score1 69.52 Score2 68.76
>Zscore=apply(X[c(“Score1”,“Score2”)],1,sum)#求每位學生三門課程成績的總分
>Zscore 92 183 153 112 90 108 116 139 1 ……134 161 135 163 122 125 116。
2.數據描述統計中的幾種常用圖形
(1)直方圖 >par(mfrow=c(1,2))如圖1。
>Tjx=hist(X$Score1,main=“統計學期末考試成績”,col=“12”,xlab=“分數”)
>Xxds=hist(X$Score2,main=“線性代數期末考試成績”,col=“12”,xlab=“分數”)
統計學期末考試成績 線性代數期末考試成績
(2)餅圖 >par(mfrow=c(1,2))
>lab=c(“40以下”,“40~50”,“50~60”,“60~70”,“70~80”,“80~90”,“90以上”)
>pct1=round(Tjx$counts/sum(Tjx$counts)*100)>label1=paste(lab,“ ”,pct1,“%”,sep=“ ”)>pie (Tjx$counts,col=rainbow(length(lab)),labels=label1, ,cex=0.6)
>pct2=round(Xxds$counts/sum(Xxds$counts)*100) > lab3=c(“50以下”,“50~60”,“60~70”,“70~80”,“80~90”,“90以上”)>label2=paste(lab3,“ ”,pct2,“%”,sep=“ ”)
>pie(Xxds$counts,col=rainbow(length(lab)),labels=lab-el2,cex=0.6),如圖2。
(3)箱線圖 >boxplot(X$Score1,X$Score2,names=c(“統計學期末考試成績”,“線性代數期末考試成績”),col=c(2,3))如圖3。
(二)R軟件在推斷統計實驗教學中的應用
推斷統計是根據樣本資料以推斷總體特征的技術和方法,主要有參數估計和假設檢驗兩種類型。在R中包含了許多常用參數及非參數檢驗方法。例如,某學生12次測量自己的身高(單位:cm)為172,170,173,172,174,170,171,173,172,175,172,171。
希望估計一下他的身高,求身高的置信水平為95%的置信區間。
這是一個區間估計問題,利用R軟件中的t.test()檢驗函數可以很快求得結果。
>X=c(172,170,173,172,174,170,171,173,172,175,172,171)
>t.test(X)輸出One Sample t-test t = 396.08,df = 11,p-value < 2.2e-16
95 percent confidence interval: 171.1271 173.0396 mean of x 172.0833
因此,身高的置信水平為95%的置信區間為(171.13,173.04)。
例如,有15個地區某種食物年需求量(X,單位:10噸)與地區人口增加量(Y,單位:千人)的資料,請對數據資料進行統計分析。
分析過程如下:輸入數據,畫出散點圖,觀察數據的分布趨勢。
>X=c(274,180,375,205,86,265,98,330,195,53,430,362,
236,157,370)
>Y=c(162,120,223,131,67,169,81,192,116,55,252,234,
144,103,212)
>Data= data.frame(X,Y) > plot(Data$X, Data$Y, pch=19, col = “blue”, xlab=“X”, ylab=“Y”)。從運行結果來看(圖4),這些點基本上在一條直線附近波動。于是利用R軟件中的lm()函數進行回歸分析。
>model=lm(Y~X) > abline(model) > summary(model)
Estimate Std. Error tvalue Pr(>|t)
(Intercept) 22.31158 4.53720 4.917 0.000281 ***
X 0.53272 0.01707 31.216 1.3e-13 ***
Signif. codes: 0 ‘*** 0.001 ‘** 0.01 ‘* 0.05 ‘. 0.1 ‘ 1
Multiple R-squared: 0.9868, Adjusted R-squared: 0.9858
F-statistic: 974.4 on 1 and 13 DF, p-value: 1.304e-13
這樣求得了回歸直線方程Y=22.31158+0.53272,由相關系數的平方R2,和F分布的p值為1.304x10-13,表明回歸方程是非常顯著的。
四、結語
通過幾個R軟件的實驗教學案例,可以看出R軟件簡單易學,統計功能強大。R軟件能夠將抽象的統計概念轉化為具體的圖形,增加了教學的直觀性,利用R軟件豐富的擴展資源進行案例教學,切實提高了學生統計分析處理數據的能力,從而培養適應大數據時代的綜合性和應用型統計人才。