欒若星
摘 要:考試成績反映出學(xué)生一定的能力,對學(xué)習過程和課程教學(xué)給出有價值的意義反饋,并且作為評估試題質(zhì)量的數(shù)據(jù)依據(jù)對制定更加完善的考試方案具有參考價值。因此,提出基于R語言的成績分析方法,使用R的基本統(tǒng)計量計算和顯示數(shù)據(jù)分布的繪圖函數(shù),實現(xiàn)成績統(tǒng)計性分析和試題質(zhì)量評估;使用R的arules添加包執(zhí)行Apriori算法實現(xiàn)關(guān)聯(lián)規(guī)則挖掘,發(fā)現(xiàn)成績中隱含的有價值信息。以C語言程序設(shè)計課程期末考試成績作為數(shù)據(jù)樣本,分析了學(xué)生整體成績水平和差異、試題的難度、信度、區(qū)分度和效度以及影響學(xué)生成績的主要因素。
關(guān)鍵詞:R語言; 考試成績; 試題質(zhì)量; 關(guān)聯(lián)規(guī)則
Abstract: Examination results should reveal students' real academic level and give valid feedback to students and teachers, for helping them improve learning abilities and teaching quality. The quality analysis of examination paper can offer meaningful reference for making more consummated exam plan. Based on the above considerations, the paper puts forward a method of examination results analysis, using R basic statistics and plotting functions to perform statistical analysis, and using Apriori algorithm from arulets package to excavate association rules for searching valuable information which is hidden in papers. Taking final exam scores of "C language programming" course as example, the paper gives analysis results of students' overall level and differences, makes a quantitative evaluation on difficulty、credibility、discrimination and validity, and finds the key factors influencing student achievement.
Key words: R language; examination scores; quality analysis of examination paper; association rules
引言
考試是檢驗學(xué)習水平和教學(xué)質(zhì)量的一種手段,而考試成績從某種意義上反映出學(xué)生的學(xué)習能力和水平,揭示其學(xué)習過程中的薄弱點,幫助教師發(fā)現(xiàn)教學(xué)中存在的問題,進而提升教學(xué)質(zhì)量。因此,對考試成績進行分析是學(xué)校教學(xué)進程中必不可少的環(huán)節(jié)。比較典型的方法是使用Excel、SAS或SPSS等統(tǒng)計軟件進行數(shù)據(jù)分析,這類軟件操作簡單,能夠快速生成統(tǒng)計結(jié)果,但無法獲取數(shù)據(jù)隱含的信息。隨著數(shù)據(jù)挖掘成為研究熱點,如何將數(shù)據(jù)挖掘技術(shù)應(yīng)用于成績分析是研究這類問題的新思路[1-2],可利用基于關(guān)聯(lián)規(guī)則的機器學(xué)習算法提取成績數(shù)據(jù)中有價值信息[3-4]。
R是一種編程語言,也是用于數(shù)據(jù)統(tǒng)計分析和繪圖的自由軟件環(huán)境[5],其強大的功能在于自身所擁有的統(tǒng)計分析、機器學(xué)習、生物信息學(xué)、繪圖等多種功能包?;赗語言對考試成績進行分析,主要使用R的基本統(tǒng)計量函數(shù)獲取成績統(tǒng)計數(shù)據(jù)和試卷質(zhì)量的各項指標;使用R的arules添加包實現(xiàn)Apriori算法[6],挖掘成績數(shù)據(jù)中的規(guī)則和模式。
1 數(shù)據(jù)處理
1.1 數(shù)據(jù)選取
以2017-2018學(xué)年第一學(xué)期“C語言程序設(shè)計”課程的期末考試成績作為樣本,總記錄數(shù)為891條。成績單為xls文件,從中選取所需的數(shù)據(jù)列 (包括學(xué)號(num)、程序設(shè)計題得分(program)、程序改錯題得分(error)、程序填空題得分(fill)、總分(score) ),存儲為csv文件(scores.csv)。如果有缺失值,可以采用人工填寫空缺值或忽略元組等方式處理。
1.2 數(shù)據(jù)讀入
使用R處理數(shù)據(jù)之前,需要將外部數(shù)據(jù)文件讀入數(shù)據(jù)框。數(shù)據(jù)框通過類似于Excel表格形式整理要處理的數(shù)據(jù),各列中保存觀測值的名稱,各行中保存實際的觀測值。成績單完全可以使用數(shù)據(jù)框進行保存。R的read.csv()函數(shù)可以將csv文件讀入數(shù)據(jù)框,代碼如下:
> (score<-read.csv (“scores.csv”) )
部分輸出結(jié)果如下:
num program [KG-*2]error fill score
1 170101001 20.0 34.6 38.0 92.6
2 170101002 20.0 40.0 40.0 100.0
3 170101003 16.6 29.3 27.3 73.2
4 170101004 15.8 32.0 33.3 81.1
5 170101005 20.0 37.3 40.0 97.3
6 170101006 12.4 24.0 30.6 67.0
2 成績統(tǒng)計性分析
2.1 統(tǒng)計量計算
使用R的基本統(tǒng)計量函數(shù)計算各題型和總分的平均值、方差及標準差(見表1)。平均分反映成績的整體水平;標準差反映全部分數(shù)的離散情況,標準差越大,差異越大。
2.2 成績分布趨勢
直方圖(histogram)可以反映每個值范圍出現(xiàn)的頻率,是了解數(shù)據(jù)分布的一種常用圖形[4]。使用R的hist()函數(shù)繪制直方圖,其分布特征可以反映試題的難度水平,對試題質(zhì)量分析具有一定的參考價值。由于繪制直方圖時,根據(jù)所選條形寬度的不同,繪出的形狀可能完全不同。采用密度圖能夠解決這一問題,使用R的density()函數(shù)繪制核密度圖,將直方圖與密度圖結(jié)合使用。
5 結(jié)束語
基于R語言對考試成績的統(tǒng)計分析、關(guān)聯(lián)規(guī)則挖掘,以及對試題質(zhì)量的評估,充分發(fā)揮了R在數(shù)據(jù)統(tǒng)計與機器學(xué)習上的優(yōu)勢,并利用其繪圖功能實現(xiàn)了數(shù)據(jù)可視化。使用R語言還可以對多門課程成績進行分析,從學(xué)生專業(yè)和教師的角度進行教學(xué)效果比較與分析,以及通過對機考組卷進行評估來完善題庫建設(shè)。
參考文獻
[1] 李巧君,李偉. 數(shù)據(jù)挖掘技術(shù)在學(xué)生成績分析中的應(yīng)用研究[J]. 微型電腦應(yīng)用,2015,31(4):35-36,40.
[2] 王海榮. 數(shù)據(jù)挖掘在學(xué)生成績分析中的應(yīng)用[J]. 電子設(shè)計工程,2013,21(4):54-56,60.
[3] 顧輝,楊青,蔣成功,等. 關(guān)聯(lián)規(guī)則在成績分析中的研究及應(yīng)用[J]. 計算機應(yīng)用,2015,35(S1):149-151,198.
[4] 王華,劉萍. 改進的關(guān)聯(lián)規(guī)則算法在學(xué)生成績預(yù)警中的應(yīng)用[J]. 計算機工程與設(shè)計,2015,36(3):679-682,752.
[5] 徐珉久. R語言與數(shù)據(jù)分析實戰(zhàn)[M]. 北京:人民郵電出版社,2017.
[6] Raghav Bali, Dipanjan Sarkar. R語言機器學(xué)習:實用案例分析[M]. 北京:機械工業(yè)出版社,2017.
[7] 李玉桃,宋長利. 對考試成績和試題質(zhì)量的科學(xué)分析與評價[J]. 現(xiàn)代教育科學(xué),2006(S2):138-139.
[8] 崔妍,包志強. 關(guān)聯(lián)規(guī)則挖掘綜述[J]. 計算機應(yīng)用研究,2016,33(2):330-334.
[9] 張啟徽. 關(guān)聯(lián)規(guī)則挖掘中查找頻繁項集的改進算法[J]. 統(tǒng)計與決策,2015(4):32-35.