基于R语言的Moodle平台数据挖掘技术的研究

2016-12-27 21:06崔新伟李家森沙嘉祥
科学与财富 2016年29期
关键词:R语言数据挖掘

崔新伟+李家森+沙嘉祥

摘要:本文利用R语言对Moodle平台的数据进行分析研究。对平台模块访问总体情况、学生学习时间分布统计、师生交互网络等进行图形化的直观展示。该研究有利于教师掌握学生学习的总体情况,有针对性的指导和督促学生。

关键词:R语言;Moodle;数据挖掘

一、引言

随着近年来网络课程、在线学习等应用的兴起,学习平台逐渐积累了大量的用户基本数据、行为数据、网络痕迹数据等信息。而"用数据说话"、"用数据决策"等已经成为信息时代倡导的未来发展基石。因此,如何利用大量的数据挖掘出有价值的信息,成为研究者重点要解决的问题。

二、R语言简介

R语言是一种为统计计算和图形显示而设计的语言环境,是贝尔实验室(Bell Labortory)的Rick Becker、John Chambers和Allan Wilks开发的S语言的一种实现,提供了一系列统计和图形显示工具。它是一套开源的数据分析解决方案,由一个庞大且活跃的全球性研究型社区维护。本文主要应用R语言的如下优势:

(1)R可以轻松地从各类型的数据源导入数据,包括文本文件、数据库管理系统、统计软件,乃至专门的数据仓库。它同样可以将专门的数据输出并写到这些系统中。

(2)具有高效的开放性,R不仅提供功能丰富的内置函数供用户调用,也允许用户编写自己定义的函数来扩充功能。

(3)R拥有顶尖水准的制图功能。如果希望复杂数据可视化,那么R拥有最全面且最强大的一系列可用功能。

R是一个体系庞大的应用软件,主要包括核心的R标准包和各专业领域的其他包。R在数据分析、数据挖掘领域具有特别优势。

三、R语言数据分析

1.moodle平台模块总体访问情况研究

首先利用爬虫爬取到Moodle平台用户访问数据两万余条,部分数据展示如表1所示:

利用R语言提取moudle列数据,即平台模块列,并对提取数据进行词频统计,得出各模块的词频数如表2所示:

利用R语言强大的绘图功能,使用ggplot()函数对各模块访问词频数绘制圆形饼状图,这样可以直观地展现用户对各模块访问情况,绘制出Moodle平台模块访问总体情况饼状图如图1所示:

在该课程学习的过程中,师生访问平台模块的频次统计饼状图,用以找出学生更热衷于哪一版块的学习内容。从图1可更加直观的看出,师生最常访问的模块是forum(26.3%)论坛区,课堂的讨论参与的人次数较多。其次是course(24.5%)课程模块,再次是assignment(22.6%)作业模块,然后是resource(16.1%)资源模块。可见,学生在该平台的访问行为,都是比较集中地围绕学习活动进行的。

2.学生学习时间分布统计

热力图是一种非常常用的统计图形,该图将两个变量(一般是离散变量)的交叉汇总信息以颜色的形式展现出来,而映射给颜色变量的是连续型数值变量,下面就以例子说明热力图的优势:

热力图可以通过stats包的heatmap()函数绘制,也可以通过ggplot2包中的geom_tile()函数或geom_raster()函数绘制,本文使用ggplot2包中的函数实现。

首先将所需数据进行提取,分别提取出月份、小时、分钟信息,部分数据展示如表3所示:

通过对ggplot2包的调用,调用geom_tile()函数,绘制学习时间分布热力图,如图2所示:

进一步按照月份进行分类,分析学生学习访问时间是否与月份有关。在按照月份进行分类的同时,按上、下午进行分类,分析学生学习访问时间是否与上、下午有关。进而细化到时间点,分析学生学习访问时间黄金时段。利用R语言绘制学习时间分布圆饼图如图3所示:

由图3可看出学生学习时间安排与月份无关,多数学生更偏向于下午学习,而每日学生学习的黄金时段为上午八点到十点,下午两点到四点。进而通过此信息,可在此时段保证各科均有老师在线答疑,而其他时段,可轮流值班的安排方案,最大限度的提高教师指导学生的效率。

3.师生交互网络分析

从Moodle平台获取的师生交互数据如图4所示:

例如id=2的用户,他发了id=5的留言。在图4中有8个回复,分别是用户id=2、30、92、66、89、49、69、2这几个用户。说明id=2的用户,跟id=2、30、92、66、89、49、69、2的这几个用户有交互。去掉其中自己跟自己的交互,可将用户的交互用图5表示:

首先做数据筛选,整理出交互数据部分如表4所示:

利用R语言做交互分析,绘制师生交互网络图,如图6所示:

图6中线的透明度代表交互的强度,具体来说就是回帖的数量越多,线的颜色就越深。其中2号代表老师,用红色表示。其他代号为学生,用蓝色表示。从图中可直观看出学生与学生,老师与学生之间的交互情况,进发现哪些学生平时思考较多,哪些学生平时思考较少,从而使教师更加有针对性的教学。例如128、158号学生与大家交互较多,积极交流课程学习内容,而在图中没有出现的学生与大家交互很少,基本没有交流课程内容。

四、结论

通过对研究样本的详细分析,实现Moodle平台数据挖掘的研究。利用R语言,对平台模块访问总体情况、学生学习时间分布统计、师生交互网络等进行直观展示。从而,发现哪些模块学生关注度较高、哪些时间段是学生学习的黄金时段、哪些学生在平台上的交互频繁等情况,帮助教师更加有效的进行教学与辅导。本文的研究成果,也为类似网络课程的学习与效果评价等提供参考。

参考文献

[1]侯亚军.R语言在数据挖掘中的运用[J].应用技术研究,2013

[2]李明.R语言与网站分析[M].北京:机械工业出版社,2014

[3]Matthew A.Russell.社交网站的数据挖掘与分析[M].北京:机械工业出版社,2015

作者简介:

崔新伟,女(1980.9-),汉族,河北唐山人,硕士,讲师,研究方向:数据挖掘

项目资助:中央基本科研业务费资助项目(JSJ1201,3142012053);2014年华北科技学院教研基金资助(计算机相关专业网络编程课教学研究);河北省物联网数据采集与分析工程技术中心建设项目

猜你喜欢
R语言数据挖掘
探讨人工智能与数据挖掘发展趋势
基于并行计算的大数据挖掘在电网中的应用
基于GPS轨迹数据进行分析改善城市交通拥挤
数据挖掘技术在中医诊疗数据分析中的应用
基于R语言的湖南产业结构对其经济增长贡献分析
注重统计思维培养与应用为主导的生物统计学课程建设
人民币汇率的均值回复检验及Hurst指数计算
一种基于Hadoop的大数据挖掘云服务及应用
R语言及ggplot2在环境空气监测数据可视化中的应用
数据挖掘的分析与探索