前言 大数据时代已经到来,基于数据科学的方法发现问题并做出科学客观的决策越来越重要。R是世界上应用广泛的数据分析、数据挖掘及数据可视化语言,是从大数据中获取信息的重要工具。它是开源、免费、跨平台、第三方支持的语言,在程序设计语言类排名中位于前十,在经济、金融、管理、生物、医学等众多领域发挥着巨大作用。近年来随着大数据、数据科学、机器学习、开源平台的发展,R语言的功能不断丰富,几乎能够完成任何数据处理任务,可安装运行于所有主流平台,是科学研究、大数据人才培养的重要工具。 国内外有丰富的R语言开放论坛、在线平台等资源,例如,RStudio网站中Resources专栏涵盖了从基础入门到高级R编程的丰富内容,Kaggle、Datacmap等在线平台从课程到项目再到竞赛一应俱全,国外很多高校公开了R语言的课程和学习资料库。相对而言,我国开设R语言程序设计的通识课程还不多,相关教材和实验资源较少。编者所在的北京交通大学设置了全校信息技术通识课“R语言程序设计”,面向大学低年级学生选修。本书结合此课程的教学目标和教学实践编写,有以下特点。 (1) 本书帮助学生较为全面地了解R语言,包括R语言基础知识、常用模型和特色应用,是读者学习和拓展R语言应用的基础资料。 (2) 本书将R语言和数据科学相结合,内容涵盖数据获取、数据描述、数据预处理、数据分析、数据挖掘、数据可视化的理论知识和R语言的主要实现方法,每章配有综合实验,引导学生利用所学知识解决问题。理论和实践相结合,为学生后续课程中的数据处理打下基础。 (3) 本书分为基础篇、进阶篇、拓展篇三个模块,共9个章节,支持32~64学时的“R语言程序设计”“数据科学”等信息技术类通识课程,支持个性化教学、分层教学、混合式教学等多种教学模式。 (4) 为帮助师生更好地使用本书,本书配有完备的教学资料,包括教学大纲、PPT课件和习题。本课程在中国大学MOOC(春季学期)上开课,方便学习。 本书可作为各类高等院校开设R语言、数据科学等通识类课程的教材,也可供数据科学、R语言爱好者自学使用。感谢为本书的编写提供直接或间接帮助的各位朋友。在编写过程中,李皓维、卢静、蒋方冰、廖云飞、陈晓瑜、罗叙卿参与了资料收集、案例测试等工作,北京交通大学“R语言程序设计”选修课的同学们参与了本书的实验测试,并对教材内容进行了反馈,在此表示感谢。R语言的实用性很强,同学们在今后的科研实践活动中能用得上,有些同学使用R语言参加建模方面的竞赛,获得一些成绩,作为教师非常高兴。面对日新月异的大数据时代,希望读者以此书为起点,学有所获,让学习常态化,不断进取。 在本书的编写过程中,编者总能发现有很多值得完善的地方,今后会在中国大学MOOC的在线课程中不断优化完善。由于水平和精力所限,书中难免有错误和不足之处,恳请广大读者批评指正。 周围崔濒月2023年2月