陳超 潘海燕
摘? 要:R軟件具有強大的統(tǒng)計分析功能,將R軟件作為輔助教學(xué)手段引入醫(yī)學(xué)統(tǒng)計學(xué)課程的教學(xué)過程,能幫助學(xué)生加深對統(tǒng)計學(xué)理論知識的直觀理解,提升教學(xué)質(zhì)量,增強教學(xué)效果。以t檢驗這一章節(jié)為例,通過實際教學(xué)中的案例探討進一步說明R軟件輔助教學(xué)的優(yōu)勢。
關(guān)鍵詞:R軟件;醫(yī)學(xué)統(tǒng)計學(xué);教學(xué)
中圖分類號:G642 文獻標志碼:A? ? ? ? ?文章編號:2096-000X(2021)02-0100-04
Abstract: R software has powerful statistical analysis functions. Using R software as an auxiliary teaching method into the teaching process of medical statistics courses can help students deepen their intuitive understanding of statistical theoretical knowledge, improve teaching quality, and enhance teaching effects. Taking the t-test as an example, the advantages of R software-assisted teaching are further explained through case studies in actual teaching.
Keywords: R software; medical statistics; teaching
醫(yī)學(xué)統(tǒng)計學(xué)是多數(shù)醫(yī)學(xué)專業(yè)的基礎(chǔ)必修課程之一,該課程涉及方法學(xué)理論知識較多,計算量大,是學(xué)生覺得難度較大的幾門課程之一。如何通過教學(xué)改革增強教學(xué)效果,提高教學(xué)效率,促使學(xué)生更好掌握統(tǒng)計學(xué)理論知識,是醫(yī)學(xué)院校統(tǒng)計學(xué)教師時常思考的一個問題。該課程要求理論實踐相結(jié)合,需要利用計算機輔助手段開展教學(xué),在此前教學(xué)中,實習(xí)課常用SPSS軟件對數(shù)據(jù)進行分析。然而在課堂教學(xué)中,一些特殊要求SPSS軟件并不能給出滿意的呈現(xiàn)。本研究以提高教學(xué)效果和學(xué)生的學(xué)習(xí)效率為根本出發(fā)點,在教學(xué)過程中引入R軟件輔助教學(xué),結(jié)合教學(xué)實際,運用任務(wù)驅(qū)動的方法,讓學(xué)生更好地理解掌握統(tǒng)計學(xué)理論知識。
目前已有很多成功將R軟件運用到教學(xué)過程當(dāng)中的案例,沈新娣[1]和安麗霞等[2]分別在大學(xué)數(shù)學(xué)和概率論與數(shù)理統(tǒng)計課程引入R軟件輔助教學(xué);劉君娥[3]在統(tǒng)計學(xué)課程進行實踐。將R軟件運用到醫(yī)學(xué)統(tǒng)計學(xué)教學(xué)實踐當(dāng)中是一個合適且值得推薦的方法。本研究將以t檢驗這一章節(jié)作為例子進行詳細說明。
一、R軟件簡介
R軟件是一項主要由奧克蘭大學(xué)的Robert Gentleman和Ross Ihaka開發(fā)的統(tǒng)計計算系統(tǒng),它提供了一個開源的統(tǒng)計編程環(huán)境,并且有一套完整的數(shù)據(jù)處理、計算和制圖軟件系統(tǒng)[4]。R軟件最大優(yōu)點是用戶能夠使用全球所有優(yōu)秀的統(tǒng)計軟件包,并且提供數(shù)據(jù)處理環(huán)境?;赗軟件的開放軟件包,在教學(xué)環(huán)節(jié)可以直接調(diào)用函數(shù)實現(xiàn)計算功能,十分方便。另外,教師若有新思路講解知識點,R軟件可以通過修改程序語句展示教學(xué)過程中需要的過程或結(jié)果,滿足教學(xué)過程的需要,有助于學(xué)生直觀理解。
二、醫(yī)學(xué)統(tǒng)計學(xué)課程的教學(xué)現(xiàn)狀
醫(yī)學(xué)統(tǒng)計學(xué)課程是高等醫(yī)學(xué)院校大多數(shù)專業(yè)的重要基礎(chǔ)課程之一,對學(xué)生解決實際問題能力的培養(yǎng)和后續(xù)課程的學(xué)習(xí)起著重要的作用。目前,醫(yī)科院校醫(yī)學(xué)統(tǒng)計學(xué)課程教學(xué)過程中,重實踐輕理論的趨勢愈發(fā)明顯,這跟專業(yè)特點有關(guān)。大多數(shù)醫(yī)學(xué)專業(yè)的學(xué)生沒有學(xué)習(xí)過概率論與數(shù)理統(tǒng)計課程,統(tǒng)計基礎(chǔ)理論知識缺乏,導(dǎo)致學(xué)生對醫(yī)學(xué)統(tǒng)計學(xué)課程的一些理論知識理解困難,進而對課程失去興趣。如何幫助學(xué)生更好理解理論知識是教師在教學(xué)過程當(dāng)中需要解決的一個問題。
陸守曾[5]指出目前醫(yī)學(xué)統(tǒng)計學(xué)整個學(xué)科的一個特點是:基礎(chǔ)理論與實際應(yīng)用密切相關(guān),但前者多處于弱勢。重視實踐而忽視理論會導(dǎo)致學(xué)生知其然而不知其所以然。比如很多學(xué)生學(xué)完該課程知道當(dāng)P<0.05拒絕原假設(shè),卻不明白為何P<0.05等價于樣本落入拒絕域。在課堂教學(xué)中加強學(xué)生對理論知識的理解尤為重要。
三、R軟件在t檢驗章節(jié)的具體應(yīng)用
(一)隨機模擬說明Z檢驗不適用于總體方差未知且樣本量較小的情況
例1.當(dāng)總體方差未知且樣本量較小時,令樣本方差代替總體方差,若采用Z檢驗,即Z=■-?滋0/S■,當(dāng)|Z|>1.96或P<0.05,在α=0.05水平下拒絕原假設(shè)。采用Monte Carlo隨機模擬,運用R軟件計算I型錯誤。程序如下:
n<-5? ? ? ? ? ? ? ? ? ?#樣本量為5
miu<-1;delta<-1? ? ? ? ? #均值為1,標準差為1
n1<-0
for(i in 1:100000)? ? ? ? #重復(fù)運行{}內(nèi)語句100000次
{
x<-rnorm(n,miu,delta)? #隨機產(chǎn)生5個x
mx<-mean(x)? ? ? ? ?#計算樣本均值
d<-var(x)? ? ? ? ? ? #計算樣本方差
p<-1-2*abs(pnorm((mx-miu)/(d/n)^0.5)-0.5) #計算P值
if(p<0.05)n1<-n1+1? ? #若拒絕原假設(shè),結(jié)論出錯次數(shù)+1
}
zerror<-n1/100000? ? ? ?#計算I型錯誤
zerror? ? ? ? ? ? ? ? ?#輸出I型錯誤
運行該程序,輸出結(jié)果為0.12,說明α=0.05,n=5,總體方差未知時,采用Z檢驗的I型錯誤率是0.12,所以在該條件下,Z檢驗不適用,需要考慮新的統(tǒng)計分析方法。
(二)比較總體方差已知與未知的區(qū)別
態(tài)分布更“扁”的分布,稱為t分布。R程序如下:
set.seed(11)
n<-5? ? ? ? ? ? ? ? ?#每次抽樣為5
time<-30? ? ? ? ? ? ?#重復(fù)抽樣30次
x<-matrix(rep(0,n*time),time,n)
mx<-vector(); s<-vector()
for(i in 1:time)
{
x[i,]<-rnorm(n,2,4)? ? ? #均值為2,標準差為4的總體中抽取5個樣本
mx[i]<-mean(x[i,])? ? ? #計算5個樣本的均值
s[i]<-sd(x[i,])? ? ? ? ?#計算5個樣本的標準差
}
Z1<-(mx-2)/(4/n^0.5)? ?#總體方差已知,計算(xl-?滋)/(?滓/■)
Z2<-(mx-2)/(s/n^0.5)? ?#樣本方差代替總體方差,計算(xl-?滋)/(S/■)
par(mfrow=c(1,2))
hist(Z1, freq=F)? ?#Z1直方圖
lines(density(Z1), col="red")? ?#實線畫Z1的密度函數(shù)曲線
lines(density(Z2), col="blue")? ?#虛線畫Z2的密度函數(shù)曲線
hist(Z2, freq=F)? ?#Z2直方圖
lines(density(Z1), col="red")? ?#實線畫Z1的密度函數(shù)曲線
lines(density(Z2), col="blue")? ?#虛線畫Z2的密度函數(shù)曲線
圖1左右圖分別為根據(jù)樣本計算得到
(三)R軟件協(xié)助探索t分布的特點
例3. 講解t分布的特點。在R軟件中,輸入以下程序,通過修改自由度df的取值,可觀察不同自由度的t分布密度曲線,讓學(xué)生探索t分布密度函數(shù)曲線與自由度的關(guān)系以及t分布與標準正態(tài)分布的關(guān)系。
df1<-2 #設(shè)置自由度為2
df2<-5 #設(shè)置自由度為5
x<-seq(-5,5,length.out=1000);? ?y<-dt(x,1,0)
plot(x,y,lty=1,xlim=c(-5,5),ylim=c(0,0.45),type='l',xaxs="i",yaxs="i", ylab='density',xlab='',main="The T Density Distribution") #實線畫自由度為1的t分布密度函數(shù)
lines(x,dt(x,df1,0),lty=2) #自由度為2的t分布密度函數(shù)
lines(x,dt(x,df2,0),lty=3) #自由度為5的t分布密度函數(shù)
lines(x,dnorm(x),lty=4) #標準正態(tài)分布密度函數(shù)
legend(3.4,0.4,c("df=1","df=2","df=5","df=∞"), lty=1:4)
圖2讓學(xué)生直觀了解到t分布的密度函數(shù)曲線關(guān)于x=0對稱,形狀和自由度有關(guān),在接近0處比標準正態(tài)分布小,遠離0處比標準正態(tài)分布大,且自由度越大越接近標準正態(tài)分布。課堂教學(xué)中可以通過修改df1和df2的取值向?qū)W生呈現(xiàn)不同自由度的t分布密度函數(shù)曲線。當(dāng)自由度大于50時,t分布密度函數(shù)曲線和標準正態(tài)分布函數(shù)曲線差距很小。
(四)R軟件比較Z檢驗和t檢驗原假設(shè),當(dāng)|A|>2.776,t檢驗拒絕原假設(shè)。Z檢驗拒絕原假設(shè)的可能性較大,犯I型錯誤率較大。兩者比較程序如下:
n<-5? ? ? ? ? ?#樣本量,分別輸入5,50,500
miu<-1;delta<-1? ? ? ? ?#均值為1,標準差為1
z1<-0;t1<-0
for(i in 1:100000)
{
x<-rnorm(n,miu,delta)? ? ?#隨機產(chǎn)生5個值
mx<-mean(x)? ? ? ? ? ? #求x得均值
s<-var(x)? ? ? ? ? ? ? ? #求x得方差
A<-(mx-1)/(s/n)^0.5? ? ? ?#計算統(tǒng)計量
t<-qt(0.975,n-1)? ? ? ? ? #計算t界值
z<-qnorm(0.975)? ? ? ? ?#計算Z界值
if(abs(A)>=t)t1<-t1+1? ? ?#判斷是否拒絕原假設(shè)
if(abs(A)>=z)z1<-z1+1? ? #拒絕則犯錯次數(shù)+1
}
terror<-t1/100000? ? ? ? ? #t檢驗錯誤率
zerror<-z1/100000? ? ? ? ?#Z檢驗錯誤率
terror; zerror
n=5,50,500時,輸出結(jié)果分別為(0.05,0.12),(0.05,0.055),(0.05,0.05),即t檢驗I型錯誤率為0.05,Z檢驗的錯誤率隨著樣本量的增加逐漸接近0.05。說明t檢驗的結(jié)果比Z檢驗結(jié)果更加精確,大樣本情況下可以用Z檢驗。
(五)R軟件協(xié)助計算t檢驗的P值
例5:計算出t值之后,根據(jù)自由度df和顯著性水平α,計算t界值:雙側(cè)檢驗用語句qt(1-α/2,df),單側(cè)上界用qt(1-α,df),下界用qt(α,df),其中α為顯著性水平,df為t分布的自由度。程序如下:
alpha<-0.05? ? ? # α=0.05
n<-10? ? ? ? ? ?#樣本數(shù)為10
df<-n-1? ? ? ? ? #自由度
qt(1-alpha/2,df)? ?#雙側(cè)t界值
qt(1-alpha,df)? ? ?#單側(cè)t界值
將t值與t界值進行比較可得出結(jié)果,或直接求P值,程序如下:
n<-10? ? ? ? ? ? #樣本數(shù)
t<-1.833? ? ? ? ? #計算得到的t值
p<-pt(t,n-1)
twop<-1-2*abs(p-0.5)
onep<-2*twop
twop? ? ? ? ? ? ?#雙側(cè)P值
onep? ? ? ? ? ? ?#單側(cè)P值
四、結(jié)束語
醫(yī)學(xué)專業(yè)的學(xué)生概率統(tǒng)計的知識基礎(chǔ)不扎實,剛接觸t檢驗這一章節(jié),對知識點的理解比較吃力,尤其是分位點函數(shù)、累計分布函數(shù)這些專業(yè)概念,導(dǎo)致對理論知識難以理解。本研究針對該特點,通過在課堂中引入R軟件協(xié)助教學(xué),從問題出發(fā),借助R軟件讓學(xué)生直觀理解抽象的理論知識,引導(dǎo)學(xué)生思考探索,提高教學(xué)質(zhì)量。
引入R軟件輔助教學(xué),既能運行程序語句輔助案例講解,加深學(xué)生對知識點的理解,又能簡單快速計算結(jié)果,提高學(xué)生運用統(tǒng)計知識解決實際問題的能力,并且能將理論知識和實際操作聯(lián)系起來,大大提高學(xué)習(xí)效果,幫助學(xué)生更好地學(xué)習(xí)t檢驗。
參考文獻:
[1]沈新娣.基于R軟件的數(shù)學(xué)實驗在大學(xué)數(shù)學(xué)教學(xué)中的應(yīng)用初探[J].衛(wèi)生職業(yè)教育,2018,36(06):77-79.
[2]安麗霞,盧丑麗,燕揚.初探R軟件在獨立院校概率論與數(shù)理統(tǒng)計教學(xué)中的應(yīng)用[J].大學(xué)教育,2018(09):102-104.
[3]劉君娥.R軟件在統(tǒng)計學(xué)教學(xué)中的應(yīng)用——以因子分析模
型為例[J].廣西科技師范學(xué)院學(xué)報,2019,34(03):149-152.
[4]薛毅.統(tǒng)計建模與R軟件[M].北京:清華大學(xué)出版社,2007.
[5]陸守曾.對醫(yī)學(xué)統(tǒng)計學(xué)應(yīng)用現(xiàn)狀的四點看法[J].中國衛(wèi)生統(tǒng)計,2010,27(02):114-115.