999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Python的Moodle學(xué)習(xí)平臺日志分析

2018-12-15 11:25:56宋永生吳新華
計算機時代 2018年10期

宋永生 吳新華

摘 要: Moodle作為一種開源學(xué)習(xí)平臺,在高職院校中得到了廣泛的運用。Moodle在使用過程中,積累了大量的數(shù)據(jù)。利用Python語言設(shè)計程序,對學(xué)習(xí)平臺積累的日志數(shù)據(jù)進(jìn)行分析,揭示出Moodle學(xué)習(xí)平臺在線學(xué)習(xí)人數(shù)隨日期和時間的變化規(guī)律,為學(xué)習(xí)平臺的計算資源分配及教師在線輔導(dǎo)的時間選擇提供決策依據(jù)。

關(guān)鍵詞: Python; Moodle; 學(xué)習(xí)平臺; 日志

中圖分類號:TP391 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2018)10-19-03

Abstract: As an open source learning platform, Moodle has been widely used in higher vocational colleges. Moodle has accumulated a lot of data in the process of using. Design a program by using Python language to analyze the log data accumulated on the learning platform, reveal the law that the number of online learner on Moodle learning platform changes with the date and time, and provide a decision basis for the allocation of computing resources of the learning platform and time selection of teachers' online tutoring.

Key words: Python; Moodle; learning platform; log

0 引言

Moodle是一種開源在線學(xué)習(xí)平臺,它基于開源腳本語言PHP開發(fā),數(shù)據(jù)庫采用開源關(guān)系型數(shù)據(jù)庫MySQL,支持SCORM和AICC標(biāo)準(zhǔn)課件,可以創(chuàng)建互操作、易訪問和可復(fù)用的基于Web的學(xué)習(xí)內(nèi)容。Moodle把整個學(xué)習(xí)過程抽象為活動和資源,主要有課程管理、作業(yè)、聊天、投票、論壇、測驗、問卷調(diào)查、互動評價及資源等模塊[1]。Moodle學(xué)習(xí)平臺界面簡潔明了,但功能非常強大,Moodle的在線教學(xué)模塊采用可自由組合的動態(tài)模塊化設(shè)計,教師構(gòu)建在線教學(xué)課程像搭積木一樣簡單有趣。伴隨著Moodle的飛速發(fā)展,近年來國內(nèi)很多高職院校先后上線了Moodle在線學(xué)習(xí)平臺。Moodle網(wǎng)絡(luò)學(xué)習(xí)平臺在使用過程中,積累了大量的學(xué)習(xí)資源數(shù)據(jù)和學(xué)習(xí)行為數(shù)據(jù),而這些數(shù)據(jù)并沒有在在線學(xué)習(xí)實踐中真正發(fā)揮應(yīng)有的作用。

Python是Guido van Rossum在1989年圣誕節(jié)期間開發(fā)的一種面向?qū)ο蟮慕忉屝透呒壋绦蛟O(shè)計語言。Python程序具有簡潔性、易讀性、可擴展性及跨平臺運行。Python作為一種膠水語言,方便擴展,提供了豐富的API和工具,可以使用C、C++或Java來編寫擴充模塊。Python最大的優(yōu)勢是有豐富的庫,數(shù)據(jù)分析是Python的殺手锏,利用Python做科學(xué)計算的科研人員日益增多。因為Python是一種解釋型語言,所以運行速度相對較慢,而且代碼不能加密,但利用Python語言編程的開發(fā)速度較快。

隨著物聯(lián)網(wǎng)、云計算等信息技術(shù)的飛速發(fā)展,各種應(yīng)用系統(tǒng)近年來積累了大量的數(shù)據(jù),對這些數(shù)據(jù)進(jìn)行分析的需求也與日俱增,然而普通用戶在進(jìn)行數(shù)據(jù)分析和使用相關(guān)工具時也面臨著諸多問題[2]。目前主流的數(shù)據(jù)分析軟件有Matlab、SPSS和SAS,然而這些軟件費用高昂,安裝包較大,安裝過程復(fù)雜,所以很多研究人員紛紛將目光轉(zhuǎn)向程序設(shè)計。目前數(shù)據(jù)分析的程序設(shè)計語言主要包括R和Python。數(shù)據(jù)集大了以后,R語言的處理速度下降明顯,而且R語言的受眾較窄,一般只有金融方面的人士在使用。近年來,隨著Python語言在人工智能領(lǐng)域的大放異彩,Python走進(jìn)了中小學(xué)課堂,且被列為全國計算機等級考試的程序語言,越來越多的人開始學(xué)習(xí)和使用Python語言。Python已經(jīng)成為最受歡迎的程序設(shè)計語言之一[3]。

本文提出利用Python語言進(jìn)行程序設(shè)計,對開源學(xué)習(xí)平臺Moodle積累下來的日志數(shù)據(jù)進(jìn)行分析,嘗試發(fā)現(xiàn)一些對Moodle學(xué)習(xí)平臺有用的信息。

1 數(shù)據(jù)處理流程

本文采用Python語言編寫程序,對Moodle學(xué)習(xí)平臺積累下來的日志數(shù)據(jù)進(jìn)行分析,數(shù)據(jù)分析處理的流程如圖1所示。

2 相關(guān)技術(shù)

2.1 數(shù)據(jù)預(yù)處理

收集到的原始數(shù)據(jù)可能來自不同的數(shù)據(jù)源,不同的格式,而且數(shù)據(jù)中也可能有缺失、重復(fù)、不一致甚至錯誤的數(shù)據(jù),這使得數(shù)據(jù)分析的結(jié)果可能出現(xiàn)偏差,甚至錯誤,所以在數(shù)據(jù)分析之前的數(shù)據(jù)預(yù)處理非常重要。數(shù)據(jù)預(yù)處理分為數(shù)據(jù)清洗、數(shù)據(jù)集成、數(shù)據(jù)規(guī)約及數(shù)據(jù)變換四個步驟。數(shù)據(jù)清洗主要包括填充缺失值、光滑噪聲、識別離群點等;數(shù)據(jù)集成主要指集成多種數(shù)據(jù)源;數(shù)據(jù)規(guī)約主要指數(shù)據(jù)的簡化表示;數(shù)據(jù)變換主要指數(shù)據(jù)規(guī)范化、離散化及概念分層等。

本文的數(shù)據(jù)來自Moodle學(xué)習(xí)平臺,可以編寫程序連接學(xué)習(xí)平臺的MySQL數(shù)據(jù)庫讀日志數(shù)據(jù),也可以通過日志頁面直接導(dǎo)出Execl或CSV格式日志數(shù)據(jù)。本文在導(dǎo)出Execl格式的日志數(shù)據(jù)后,編寫Python程序,利用openpyxl庫,讀取日志數(shù)據(jù),轉(zhuǎn)換日期時間列的格式,生成新的日期列和時間列,將處理結(jié)果保存為新的Execl文件,部分日志數(shù)據(jù)如圖2所示,其中加粗的為新增列。由于本文的數(shù)據(jù)源單一,不存在數(shù)據(jù)缺失等問題,所以數(shù)據(jù)預(yù)處理相對簡單。

2.2 利用Pandas進(jìn)行數(shù)據(jù)分析

數(shù)據(jù)分析是指利用統(tǒng)計等方法對收集到的數(shù)據(jù)進(jìn)行分析,提取有用信息并形成知識的過程。數(shù)據(jù)挖掘是從海量數(shù)據(jù)中抽取前所未知的,可理解的,可操作信息的過程,數(shù)據(jù)挖掘是數(shù)據(jù)分析的高級階段。Pandas是一個專門用于數(shù)據(jù)分析的開源Python庫[4],它以Python的科學(xué)計算基礎(chǔ)庫NumPy為基礎(chǔ),使得Pandas具有較好的兼容性,還可以借力NumPy庫在計算方面的高性能優(yōu)勢。Pandas最初由AQR Capital Management于2008年4月開發(fā),并于2009年底開源。Pandas提供了多種高級的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)處理的方法,其中最主要的是Series和DataFrame數(shù)據(jù)結(jié)構(gòu)。Series用來表示一維數(shù)據(jù)結(jié)構(gòu),與數(shù)組類似,但功能更強大,每一個元素都有一個標(biāo)簽,可以理解為一組帶索引的數(shù)組。DataFrame用來表示二維的表結(jié)構(gòu),它是由按一定順序排列的多列數(shù)據(jù)組成,各列的數(shù)據(jù)類型可以不同。

本文利用Python編寫程序,讀取數(shù)據(jù)預(yù)處理得到的Execl文件,首先把用戶全名及日期列讀取到Pandas DataFrame中,刪除重復(fù)行,然后按日期進(jìn)行分組,統(tǒng)計每組總?cè)藬?shù),得到在線人數(shù)隨日期變化的統(tǒng)計數(shù)據(jù);再把用戶全名、時間列讀取到Pandas DataFrame中,刪除重復(fù)的行,按時間進(jìn)行分組,統(tǒng)計每組總?cè)藬?shù),得到在線人數(shù)隨時間變化的統(tǒng)計數(shù)據(jù)。

2.3 利用Matplotlib進(jìn)行數(shù)據(jù)可視化

數(shù)據(jù)可視化是指將數(shù)據(jù)分析的結(jié)果,通過圖形等方式直觀展示出來,便于解釋和評估,從而形成知識。一張圖勝過千言萬語,當(dāng)數(shù)據(jù)以直觀的圖形方式展示在數(shù)據(jù)分析者面前時,分析者往往能夠一眼洞悉數(shù)據(jù)背后隱藏的信息并轉(zhuǎn)化知識以及智慧[5]。Python中常用的數(shù)據(jù)可視化庫主要有Matplotlib、Bokeh、Pygal、Plot.ly、Seaborn及ggplot。

Matplotlib是一個基于NumPy的2D繪圖庫,它以各種硬拷貝格式和跨平臺的交互式環(huán)境生成出版質(zhì)量級別的圖形。Seaborn及ggplot庫是以Matplotlib庫為基礎(chǔ)進(jìn)行構(gòu)建的。Matplotlib用于數(shù)據(jù)的可視化,可以將數(shù)據(jù)分析結(jié)果直觀展示,便于數(shù)據(jù)分析結(jié)果的解釋和評估。利用Matplotlib庫,通過編程可以方便繪制直方圖、折線圖、餅圖、散點圖及雷達(dá)圖等。本文在對學(xué)習(xí)平臺的日志數(shù)據(jù)分析結(jié)果進(jìn)行可視化時,通過調(diào)用Matplotlib繪圖庫,先以日期為橫軸,以對應(yīng)的在線人數(shù)為縱軸,繪制折線圖,展示出學(xué)習(xí)平臺在線人數(shù)隨日期的變化規(guī)律;再以時間為橫軸,以對應(yīng)的在線人數(shù)為縱軸,繪制折線圖,直觀地展示出學(xué)習(xí)平臺在線人數(shù)隨時間的變化規(guī)律。

3 數(shù)據(jù)分析實現(xiàn)

本文選擇江蘇工程職業(yè)技術(shù)學(xué)院商學(xué)院的2016級電子商務(wù)獨立本科班所使用的Moodle學(xué)習(xí)平臺的網(wǎng)絡(luò)課程《網(wǎng)絡(luò)安全》的日志數(shù)據(jù)進(jìn)行分析,共14人(含在外實習(xí)學(xué)生)參加該課程網(wǎng)絡(luò)學(xué)習(xí)。在Moodle學(xué)習(xí)平臺的日志信息頁面,選擇要分析的日志并導(dǎo)出為Execl格式,然后通過Python編寫程序讀取日志數(shù)據(jù),對日志數(shù)據(jù)進(jìn)行預(yù)處理,轉(zhuǎn)換日期時間格式,生成新的日期列和時間列,將預(yù)處理后的日志數(shù)據(jù)保存。讀取用戶全名及日期列,刪除重復(fù)行,先按日期進(jìn)行分組統(tǒng)計在線人數(shù)并利用Matplotlib繪制折線圖,橫軸為日期,縱軸為在線學(xué)習(xí)人數(shù),程序運行結(jié)果如圖3所示。

類似的,按時間進(jìn)行分組統(tǒng)計在線人數(shù)并利用Matplotlib繪制折線圖,橫軸為時間,縱軸為在線學(xué)習(xí)人數(shù),程序運行結(jié)果如圖4所示。

由圖3可以看出,在線學(xué)習(xí)的人數(shù)有一定的周期性規(guī)律,這點與該課程在每周二開課,課上學(xué)生利用學(xué)習(xí)平臺進(jìn)行學(xué)習(xí)或測驗相吻合,上課日期的在線人數(shù)最多。由圖4可以看出,晚上在線學(xué)習(xí)的人數(shù)較多,這與課程開設(shè)在晚間是一致的,此外中午放學(xué)后、下午放學(xué)后及晚上放學(xué)后,在線人數(shù)也會出現(xiàn)小高峰,這說明學(xué)生課余時間會登錄學(xué)習(xí)平臺進(jìn)行學(xué)習(xí)及做作業(yè)。除了課堂時間,教師可以選擇在這三時段進(jìn)行在線輔導(dǎo)。平臺管理者應(yīng)該為學(xué)習(xí)平臺的服務(wù)器在該時段分配更多的計算資源,以保證學(xué)習(xí)平臺順暢穩(wěn)定運行。

4 結(jié)束語

本文利用Python語言編寫程序,分析開源學(xué)習(xí)平臺Moodle產(chǎn)生的日志數(shù)據(jù),從而揭示一些關(guān)于Moodle平臺上學(xué)習(xí)者學(xué)習(xí)的規(guī)律。該研究有助于教師選擇在線人數(shù)較多的時段進(jìn)行在線輔導(dǎo)及答疑,從而提高學(xué)生的在線學(xué)習(xí)效率,平臺管理者在此時段應(yīng)為學(xué)習(xí)平臺的服務(wù)器分配更多的計算資源。將來可以利用機器學(xué)習(xí)的方法對 Moodle學(xué)習(xí)平臺積累的數(shù)據(jù)進(jìn)行分析,幫助教師發(fā)現(xiàn)學(xué)生學(xué)習(xí)的更多規(guī)律、分析學(xué)習(xí)特征及習(xí)慣等,針對性的改進(jìn)學(xué)習(xí)平臺及學(xué)習(xí)資源,優(yōu)化教學(xué)過程,為學(xué)生提供個性化的學(xué)習(xí)服務(wù),提升教學(xué)效果。

參考文獻(xiàn)(References):

[1] 宋永生.基于云計算的在線學(xué)習(xí)平臺研究[J].價值工程,2017.36:172-174

[2] 嚴(yán)婷,文欣秀,趙嘉豪等.基于Python的可視化數(shù)據(jù)分析平臺設(shè)計與實現(xiàn)[J].計算機時代,2017.12:54-56

[3] 聶晶.Python在大數(shù)據(jù)挖掘和分析中的應(yīng)用優(yōu)勢 [J].廣西民族大學(xué)學(xué)報(自然科學(xué)版),2018.24(1):76-79

[4] (意)Fabio Nelli著,杜春曉譯.Python數(shù)據(jù)分析實戰(zhàn)[M].人民郵電出版社,2016.

[5] 任磊,杜一,馬帥等.大數(shù)據(jù)可視分析綜述[J].軟件學(xué)報,2014.25(9):1909-1936

主站蜘蛛池模板: 高清大学生毛片一级| 尤物午夜福利视频| aaa国产一级毛片| 国产在线视频自拍| 国产在线视频导航| 婷婷综合色| 91视频国产高清| 2021天堂在线亚洲精品专区 | 91丝袜乱伦| 日韩一区二区三免费高清| 波多野结衣在线一区二区| 视频二区亚洲精品| 精品国产美女福到在线直播| 日韩av在线直播| 中美日韩在线网免费毛片视频| 2021国产精品自产拍在线观看| 极品私人尤物在线精品首页| 亚洲天堂在线视频| 国产欧美日韩一区二区视频在线| 国产97视频在线观看| 伊人久久婷婷五月综合97色| 国产在线第二页| 亚洲欧美精品一中文字幕| 中文字幕伦视频| 四虎影视国产精品| 青青青伊人色综合久久| 国产后式a一视频| 天天色天天综合| 久久这里只精品国产99热8| 国产在线无码一区二区三区| 亚洲精品人成网线在线| 亚洲一区二区约美女探花| 免费高清毛片| 精品人妻无码中字系列| 国产流白浆视频| 欧美成人aⅴ| 欧美不卡视频在线| 久久这里只有精品66| 无码精品一区二区久久久| 色综合综合网| 亚洲国产系列| 国产91丝袜在线观看| 国产最新无码专区在线| 精品人妻一区无码视频| 亚洲国产天堂久久综合226114| 亚洲日韩图片专区第1页| 欧美一级在线看| 久久成人国产精品免费软件 | 欧美日韩一区二区在线播放| 国产在线91在线电影| 久久久久亚洲AV成人网站软件| 国产中文一区二区苍井空| 日本久久免费| 国产免费好大好硬视频| 亚洲无码在线午夜电影| 亚洲午夜18| 制服无码网站| 国产日韩精品一区在线不卡 | 国产精品漂亮美女在线观看| 亚洲永久色| 91一级片| 国产超薄肉色丝袜网站| 欧美午夜视频在线| 伊在人亚洲香蕉精品播放| 一级毛片在线播放免费观看| 嫩草国产在线| 欧美日韩精品综合在线一区| 美女被操91视频| 欧美一区二区三区欧美日韩亚洲| 欧美日韩国产成人高清视频| 国产精品视频免费网站| 色屁屁一区二区三区视频国产| 日本高清免费不卡视频| 91九色最新地址| 国产亚洲高清在线精品99| 亚洲va精品中文字幕| 免费国产无遮挡又黄又爽| 欧美一区二区三区香蕉视| av一区二区无码在线| 狠狠亚洲婷婷综合色香| 国产又爽又黄无遮挡免费观看 | 亚洲中文字幕23页在线|