


摘要:隨著大數據和云時代的到來,數據分析技術作為一門前沿技術,廣泛應用于各大領域,“數據分析”作為大數據時代的核心技術,其商業價值正在逐步展現。文章將使用最前沿的R語言,借助數據可視化平臺RStudio,對本校計算機網絡技術專業的專業基礎課程計算機網絡基礎的教學效果進行可視化分析,從而為教學質量改革提出有效建議。
關鍵詞:數據分析;R語言;可視化;匯總分析
中圖分類號:G424 ? ? ?文獻標識碼:A
文章編號:1009-3044(2022)31-0053-03
1 引言
R語言是一種面向對象的編程語言,是為統計計算和圖形顯示而設計的語言環境,也是一套開源的數據分析解決方案。R語言最大的優勢在于其軟件包生態系統的開放性,即免費開源,并且可以在不同的平臺上運行。R語言作為完全免費的統計分析軟件,可以輕松地從各種類型的數據源讀寫數據,幾乎所有類型的數據都可以用R語言進行統計分析。另外,R語言具有頂尖水準的制圖功能,能夠直觀地提升用戶對數據的理解,并幫助用戶做出正確的判斷和改進[1]。
R語言的原始編譯窗口較為簡單,提供的編譯環境不太友好,為了提高代碼的編寫效率,本文選擇使用RStudio 作為代碼編譯環境。RStudio作為R語言的免費的圖形界面編輯器,其實質性的編程語言與R 語言無異,但是比R語言原有的編譯窗口擁有更友好的界面環境和更強大的操作性能[1]。
本文將使用最前沿的R語言,借助數據可視化平臺RStudio,對計算機網絡技術專業的專業基礎課程計算機網絡基礎的教學效果進行可視化分析。通過統計分析和可視化圖形展示,為計算機網絡基礎課程的教學改革提供有力的數據支撐,從而進一步提升計算機網絡技術專業的教師教學水平。
2 將數據導入到RStudio
本文將針對計算機網絡技術專業的專業基礎課程計算機網絡基礎的學生成績進行分析,因此首先需完成數據的導入。基于教務系統的數據管理流程,學生的成績均是存放在學校教務系統的數據庫中的,因此,在數據分析前,需先將學生成績數據導入RStudio中。
本文將模擬從MySQL數據庫將數據導入RStudio的過程。
2.1 數據準備工作
首先在MySQL中創建數據庫stuanalysis,本文要用到的計算機網絡基礎課程的學生成績表存在于數據庫stuanalysis的表格中,將數據表命名為stuscore,通過查看表格內容,可以確定該專業年級215名學生的成績信息已存在于數據表stuscore中(圖1) 。
通過查詢,可以看到,計算機網絡基礎課程的成績由課堂活動、作業和考試三部分組成,三個部分均以百分制來計分,在總成績中所占比例分別為課堂活動(30%) 、作業(30%) 、考試(40%) ;總成績由以上三部分的成績按比例計算而來,同樣采用百分制計分。
2.2 R環境準備
在用R進行數據分析前,先要完成R和MySQL數據庫的連接,方便人們直接對數據進行處理。具體步驟如下:
1) R下載RODBC包,加載RODBC包;
2) 下載并安裝mySQL ODBC;
3) 控制面板→管理工具→數據源(ODBC) →點擊添加→選中MySQL ODBC driver選項;
4) 打開RStudio的界面調用數據庫;
5) 至此,R已經成功與MySQL數據庫連接,并且獲取了MySQL庫中stuanalysis數據庫里stuscore表中的數據,存放在數據框StuAnalysis中。
3 數據清洗與匯總分析
R語言中的數據清洗的目的在于刪除重復、有缺失值的信息,對數據進行重新審查和消炎,糾正存在的錯誤;而R語言中提供的多種數值計算和統計分析的函數,則可以幫助人們快速地對數據進行匯總統計分析[2]。
3.1 缺失數據處理
在數據分析的過程中,數據對象的不完整性會對后期的數據可視化分析造成影響,比如,因在學生成績表中會存在某些學生按時參加課堂活動,完成教學安排,但是因個人原因無法參加期末考試的情況。因此在進行數據分析前,先要進行數據的缺失值處理。
1) 檢測StuAnalysis中是否存在缺失值。代碼如下:
> anyNA(StuAnalysis)
[1] TRUE
經檢測,StuAnalysis確實存在缺失值;
2) 刪除StuAnalysis中存在缺失值的行,并將刪除缺失值后的數據賦值給新的變量score.data。代碼如下:
score.data<- na.omit(StuAnalysis)
3.2 數據匯總統計分析
對于學生成績數據的統計分析,首先可以使用R語言中的數值計算和統計分析函數,對學生成績進行初步統計分析。
在傳統的成績分析中,往往會以最大值、最小值、均值等指標作為初步的統計量,在 R 語言中,也要通過指標來表現數據樣本的集中趨勢、離散程度和數據分布形狀[3]。
通過 R 語言的數值計算和統計分析函數來實現對學生學習成績的初步分析,分別得出課堂活動、作業、考試和總成績的各項統計值,得出結果如表1所示。
表1 ? 學生成績統計表
[統計分量 均 ?值 中位數 標準差 方 ?差 變異系數 課堂活動 91.34995 93.33 11.0805 122.7774 12.12972 作 ?業 81.85977 88.105 17.58625 309.2761 21.48338 考 ?試 64.93458 66 16.79664 282.1272 25.86702 總成績 77.93734 80.595 11.54148 133.2057 14.80866 ]
通過上表可得知:變異強度最低的是課堂活動,其次是總成績;在數據統計分析中,如果變異系數值超過15,則認為數據存在疑問。因此,本科目的作業成績和期末考試成績可能因為某些客觀原因而導致數據變異強度過大;但是基于總成績的變異系數在規定范圍內,可見本課程的教學效果相對良好。
4 數據可視化分析
R 語言的強大不僅體現在便捷的數據統計計算,還體現在可生成各種可視化的圖形,從而更加直觀地向決策者提供數據依據[4]。本文將使用R語言中的散點矩陣圖和箱線圖來反映學生成績分布情況。
4.1 繪制成績散點矩陣圖
根據導入的課堂活動、作業、考試和總成績數據,利用R語言的pairs() 函數,繪制成績散點矩陣圖(圖2) 。代碼和運行結果如下:
> pairs(score.data[,3:6])
通過散點矩陣圖,可以直觀地發現,課堂活動、作業和考試分數與總成績之間基本上可以滿足線性規律,其中考試分數與總成績之間的線性相關性最高,說明試卷的難易程度符合課程考核要求。另外,通過觀察發現,課堂活動、作業和考試分數三者之間的相關性不高,尤其是課堂活動與考試之間,難以發現線性相關,說明某些課堂活動參與度高的同學反而在考試中成績表現并不好,這是需要任課教師在今后的教學活動中進一步做出調整和改進。
4.2 繪制成績箱線圖
為了對學生專業課成績的差異性及產生原因進行分析,本文將利用R語言的boxplot() 函數繪制課堂活動、作業、考試和總成績數據的箱線圖(圖3) 。代碼和運行結果如下:
> boxplot(score.data[3:6])
通過箱線圖,可以直觀地發現,課堂活動、作業和考試分數與總成績之間存在一定的差異性,主要體現以下四點:
1) 在學生的課堂活動成績相較于其他三項較高,而且相對集中,數據離散值較少;
2) 作業的箱線圖相較于其他三項離散值最多,說明學生在作業完成情況上差異項較大;
3) 學生的考試成績雖均值較低,但數據的分布情況最好,可以滿足成績的正態分布規律;
4) 從總成績的分布來看,該科目的教學效果較良好,基本滿足教學要求。
5 總結
本文借助數據可視化平臺RStudio,對本校計算機網絡技術專業的專業基礎課程計算機網絡基礎的課程成績進行了全面細致的分析,使用R語言實現了對數據的初步統計分析,并通過散點矩陣圖和箱線圖對教學效果進行可視化分析,從而為教學質量改革提出有效建議。
近年來,隨著大數據時代的到來,基于R語言的數據挖掘技術得到了快速發展和應用的良機[5]。同時也為高校教師提供了便利,促使我們將其使用在學生成績分析中,通過數據統計和可視化圖形來發現教學中的問題,從而進一步優化教學過程,提升專業核心競爭力。
參考文獻:
[1] Kabacoff R I.R語言實戰[M].高濤,肖楠,陳鋼,譯.北京:人民郵電出版社,2013.
[2] 林智章,張良均.R語言編程基礎[M].北京:人民郵電出版社,2019.
[3] 洪明意,龍海俠,王覓,等.R語言在學習成績應用中的探究[J].福建電腦,2018,34(4):3-5.
[4] 楊超.基于R語言的學生成績分析[J].遼寧師專學報(自然科學版),2020,22(4):95-99.
[5] 岳強,胡中玉,文瑾,等.基于R語言的數據挖掘課程實驗設計[J].微型電腦應用,2016,32(5):31-34,37.
【通聯編輯:聞翔軍】
收稿日期:2022-03-16
基金項目:教育部高校學生司關于供需對接就業育人項目(人力資源提升項目)(項目編號:20220101016)
作者簡介:吳立知(1985—) ,女,貴州貴陽人,副教授,碩士,研究方向為網絡技術、數據挖掘。