数据科学与教育
课程简介
数据科学是一门从数据中获取信息的科学。数据科学与教育,试图将数据科学的应用场景放在教育领域,对教育领域中产生的数据进行分析,以期丰富对于教育现象的认识,回答教育实践中待解的问题。教育过程正在不断产生大量数据,如学生成长的数据,教育管理数据等,需要我们充分地利用数据给我们提供的信息,才能够更好地去安排教育活动,制定更好的教育政策。本门课程主要是帮助学生掌握数据分析的基本步骤、方法、原理和规范。课程依赖于但不同于传统的概率与统计知识,更侧重于对于数据挖掘技术的训练,内容包括数据清理、探索性分析技术、数据可视化和基础的统计分析方法。课程使用的统计分析软件为R和Rstudio,课程详情参见课程网站。
课程目标
- 掌握数据的结构、类型与格式等知识;
- 掌握原始数据的清理技术;
- 掌握各类统计表格的制作;
- 掌握各类统计图形的制作;
- 掌握相关性分析的技术;
- 掌握多元回归的基本技术;
- 掌握使用R语言的基本技术;
课程内容
- 数据清理,涉及数据导入导出、变量调整与生成、数据分拆、合并与变形等技术;
- 表格制作,涉及频数表、统计表和交叉表、相关性分析结果表格的制作与格式的设计;
- 图的制作,涉及柱状图、线状图、直方图、密度图、散点图等生成与格式的设计;
- 相关性分析技术,涉及T检验、卡方检验、ANOVA和相关系数分析等;
- 复杂相关性分析,涉及多元分析和Logistic回归等;
- R语言的使用。
授课形式
本课程是一门技术性很强的课程,主要是使学生掌握基本的数据分析技术。因此,课程以教师展示分析技术,学生实践操作的形式展开。与此同时,学生需要在课下阅读大量材料和做相关练习。
课程要求
- 需要学生具备基本的概率与统计知识,本课程仅涉及最为基础的统计知识,比如T检验和多元回归等;如果没有相关知识,本课程提供了多种通俗易懂的学习材料,学生可在教师指导下自学必要的概率与统计知识;
- 使用R语言进行数据分析,学生需要学习一些R语言编程知识;
- 课程使用的阅读材料以英语为主。
课程材料
本课程涉及R编程知识、数据科学知识、数据可视化、统计知识等。接下来将提供相关的学习材料,这些材料是我在众多学习材料中拣选的,我认为易于理解、且有用的书籍,根据内容的难易,分为重点使用和推荐阅读两类,前者一般要求学生必读的内容,后者是在学生有余力的情况下,可选择阅读。以下阅读材料都open access的,可直接点击链接获取。
- R编程知识
An Introduction to R,介绍R编程的基础知识,是R编程语言最基础、最简单的介绍,重点使用;
R Programming for Data Science,是对R programming 比较系统的介绍,涉及R的历史、数据结构、条件式、功能性方程、正则表达式、随机模拟等,是R编程语言相对底层的知识。常规数据分析并不必然需要这些知识,但学习这些知识有以下好处:可以让分析工作更高效,比如一些重复性的工作,如果掌握function的编写,可以有效的减少工作量;数据分析过程中难免会遇到一些bug,理解一些R编程的底层知识,有助于快速找到bug的原因;有助于对一些数据分析结果进行解读。作为一本拓展性质书,推荐阅读。
- 数据科学知识
The Art of Data Science,一本描述数据分析流程与思路的书。正如作者所说,在完整的数据分析流程中,思考(thinking)的内容可能比做(doing)的内容更多,确定、修正研究问题,选择数据,选择分析方法,对结论进行各种可能的检验,对结果取舍和解读,等等。这本书给数据分析流程一个完整、清晰的分析框架。特色之处在于不是介绍数据分析过程中的具体技术操作,而是分享数据分析过程中各种问题的应对与思考。作者通过例证介绍流程与步骤,更多的是使用文字描述数据分析过程的步骤以及每一步所需注意的事项,基本没有使用代码,极少使用公式,思路极为清晰,语言简洁明了,是学习数据分析难得的说明书,重点使用。
R for Data Science,以R语言和tidyverse软件包对象,重点介绍数据分析的各项个体操作技术,重点使用。
Data Science in Education Using R,聚焦于将数据科学的理论与技术应用到教育数据的分析当中,以案例项目为单位进行的内容编排。以教育数据分析的具体场景展开,具体的分析技术穿插在项目分析过程中,推荐阅读。
- 数据可视化
R Graphics Cookbook, 2nd edition,介绍各类图形的具体操作,附带代码,重点使用;
Fundamentals of Data Visualization,关于图形选择与设计的书籍,以美学和信息有效传播的视角展开,提供大量精美图形示例,不包括代码,推荐阅读;
- 数理统计知识
Quantitative Research Methods for Political Science, Public Policy and Public Administration: With Applications in R,对一元回归、多元回归有系统的介绍,最为重要的是使用R语言分解、演示统计知识,易于理解,重点使用;
Seeing-Theory,可互动、可视化地呈现统计学知识,有助于理解概率统计的复杂概念,内容不多,可快速浏览,推荐阅读;
Introduction to Modern Statistics,作为一本统计学的入门书箱,本书的优势在于:通过个案数据分析,而不是抽象的公式推导,介绍统计推断的基本知识;使用大量的数据图和示意图,有助于理解抽象的概念;除传统的数理统计方法,还介绍最新的randomization 和bootstrap统计方法。附带代码和基于网页的代码运行环境,易于操作练习,推荐阅读。
Improving Your Statistical Inferences,对统计推断过程中的误读、误用有清晰透彻的介绍,推荐阅读。
设计理念
- 开放免费。使用开源软件和和开放的学习材料,本课程使用的R语言及其packages是开源的,一律使用open access的学习材料,包括相关书籍和课程;
- 翻转课堂,以学生为中心,强调学生的练习与自学,作为一门技术性课程,课堂演示是远远不够的;数据分析技术不断更新,新packages不断产生,需不断学习,才能掌握最新最先进的分析技术;
- 坚持操作导向,除了理解概率与统计的理论知识之外,更多强调在技术上如何实现;当然也会提供相关原理和思路方面的阅读材料,供学生课下学习;
- 本课程教学策略是:do-see-understand-apply。学生先完成数据分析的实际操作,后通过对结果的观察与理解,进而明白编程技术和统计分析方法的原理,然后将相关的编程技术和分析方法运用到新的数据分析场景;
学习方法
学好这门课程需要注意以下四点:
- 练习、练习、练习。如同所有技术一样,数据分析技术只有通过大量练习,才能掌握,才能熟能生巧;
- 不断反思。现在的编程技术已经很智能和便捷,几行代码就可以完成一个很复杂的数据分析任务,得到丰富的结果,很多数据分析相关的书籍也都提供了干净的数据和优化的分析案例,也很容易复现这些分析过程和结果。但是只有理解这些代码背后的工作,才能将这些技术迁移到新的使用场景;因此,在学习过程中,要不断地追问,不仅知道怎么做的问题,更为重要的是知道为什么这样做。
- 应用。需要尝试把学习的技术运用新的场景,复现书中案例的结果是第一步,是否能将新技术运用新的数据分析是检验是否掌握这门技术的判断标准。
- 寻求帮助。现实中的数据常常是混乱的,编程技术也是比较复杂且是不断进步的,因此,学习中遇到这样那样的问题在所难免,寻求帮助是必不可少的,求助的对象可以是网络上资源,如自学教程、专业论坛,也可以是同伴和老师。
考核方式
- 出勤:10%,
- 平时作业:50%,将有5次课后作业,涉及数据清理、表格制作、数据可视化、相关分析和回归分析。
- 研究报告:40%,使用二手教育数据,利用所学技术,选定一个研究问题,撰写一份数据分析报告。