总序
当前,以人工智能和大数据技术为代表的新一轮科技革命正在重塑全球的社会经济结构,“数据”是这个过程中最重要、最有活力的生产要素。如何高效发挥大数据的作用并实现其价值,成为社会各界必须面临和思考的重要问题。除实验、理论和仿真之外,新的科学研究范式——“数据科学”因此应运而生。数据科学与大数据技术同人工智能一道,将成为改变人类社会活动和改变世界的新引擎。
世界主要发达国家已把发展数据科学与大数据技术作为提升国家竞争力、维护国家安全的重大战略,加紧出台了规划和政策,围绕核心技术、顶尖人才、标准规范等强化部署,力图在新一轮国际科技竞争中掌握主导权。2015年8月,我国国务院印发的《关于促进大数据发展行动纲要》明确了发展大数据的指导思想、发展目标和发展任务,标志着大数据正式上升为国家核心战略。同年10月,《中共中央关于制定国民经济和社会发展第十三个五年规划的建议》提出要“实施国家大数据战略,推进数据资源开放共享”,标志着大数据正式成为“十三五”规划的核心内容。2016年的政府工作报告中也专门提出“促进大数据、云计算、物联网广泛应用”,这就意味着自2014年首次进入政府工作报告以来,大数据连续三年受到我国政府的高度关注。在党的十九大报告中,习总书记强调要推动互联网、大数据、人工智能和实体经济深度融合,在中高端消费、创新引领、绿色低碳、共享经济、现代供应链、人力资本服务等领域培育新增长点,形成新动能。2017年,国务院印发的《新一代人工智能发展规划》中指出,要抢抓人工智能发展的重大战略机遇,构筑我国人工智能发展的先发优势,加快建设创新型国家和世界科技强国,并提出了我国人工智能发展的重点任务之一就是加快培养人工智能高端人才。然而在我国数据科学与大数据技术、人工智能领域发展过程中仍旧面临着众多制约因素。
在国务院印发的《新一代人工智能发展规划》的重点任务中,明确提出要研究统计学习基础理论、不确定性推理与决策、分布式学习与交互、隐私保护学习、小样本学习、深度强化学习、无监督学习、半监督学习、主动学习等学习理论和高效模型,并统筹布局概率统计、深度学习等人工智能范式的统一计算框架平台和人工智能创新平台。
数据科学与大数据技术是一个需要具备多方面学科知识背景并涉及多个应用领域的交叉专业。当前我国共有280多所高校在工学和理学学科门类中开设数据科学与大数据技术本科专业,培养掌握统计学、计算机科学、数学等主要知识、符合国家发展战略的重大需求的高级人才。相对于其他成熟的本科专业,数据科学与大数据技术人才的稀缺成为制约大数据领域发展的重要因素,是当前亟须解决的重大问题。
总序
大数据预处理:基于Python的应用
数据科学与大数据技术本科专业的建设实际上是一场教育革命,是受业界需求驱动形成的,其理论基础、课程体系和知识结构框架均处于探索阶段。但有一点非常明确,“实践”是学习该专业最重要、最高效的方式,这也成为本套教材——“普通高等教育数据科学与大数据技术专业‘十三五’规划教材”的编写导向。这不仅需要学生夯实统计学、应用数学以及计算机科学等学科的基础,也需要学生具备大数据所服务行业的相关知识积累和实践经验。只有掌握多学科融会贯通的能力,才能真正成为一个有思想的数据科学家。
为了探索学科人才培养模式,北京大学、中国人民大学、中国科学院大学、中央财经大学和首都经济贸易大学在2014年共同搭建了“大数据分析硕士”培养协同创新平台。在不断的摸索中,一套科学完整的课程体系逐渐建立起来。随后,相关课程也在全国多所院校中实施,成为我国大数据技术高端人才培养体系的蓝本。
为紧跟科学技术的发展潮流,引领中国大数据理论、技术、方法与应用,在北京大数据协会及相关机构的组织下,开展了教材编写的大量前期国内外调研工作,并于2017年6月在云南举办了“第一届全国数据科学与大数据技术本科专业建设研讨会”,展示了调研成果,为中国数据科学与大数据技术人才培养奠定了基础。为进一步厘清该专业的培养方案和课程内容建设的目标和路径,从培养方案、课程体系、培养过程、教材建设等方面深入交流探讨,于2019年5月在北京召开了“第二届全国数据科学与大数据技术本科专业建设研讨会”,会上正式发布了本套系列教材。
本套教材凝聚了全国相关院校数据科学与大数据技术领域著名专家和学者的智慧和力量。在教材编写过程中更加关注的是数据分析思想的引导,体现数据分析的艺术,侧重于从数据和案例出发,厘清数据分析的基本思路,这样能够让读者更好地理解各种假设、公式、定理和模型背后的逻辑。为了结合现实需求,每本教材均配套相关的Python编程代码,让读者在练中学、学中练的过程中夯实基础,积累经验,提升竞争力。尽管编写人员投入了大量的心血,但教材内容还需不断突破和完善,希望能够得到各位专家和同行的批评指正,共同实现此套教材满足教学需求的编写宗旨。
本套系列教材是集体创作的成果。感谢编委会成员和其他编写人员的辛勤付出,以及北京大学出版社和首都经济贸易大学出版社的大力支持。希望此套教材能对广大教师和学生及各数据科学领域的从业人员具有重要的参考价值。
北京大数据协会会长
2019年9月
前言
当今时代,数据资源变得如此重要,已经成为推动经济高质量发展的重要生产要素,与之相适应,数据科学成为人们津津乐道的概念。在众多关于数据科学的定义和解释中,笔者非常赞同最简单的那一个:“数据科学是一门将数据变得有用的学科。”要想让数据变得有用,至少要经历数据获取(采集)、数据预处理、数据分析(建模),以及对数据分析结果的展示及应用四个阶段。在这四个阶段中,传统观点往往将数据预处理视为一个辅助过程而被人们所忽视,以至于广大读者很难在市场上找到一本专门讨论数据预处理的书籍。然而在大数据时代到来以后,实践领域的经验告诉我们,大数据环境下数据预处理不再是可有可无的过程,通过预处理既要完善并简化所获取的数据,使之能够用于分析;又要根据分析的需要改变数据的状态和属性,提升其分析价值并降低信息挖掘难度。因此,数据预处理是数据分析过程的重要步骤,预处理质量和效果直接决定了数据分析结果的价值。
本书站在数据分析全过程的视角介绍在数据预处理过程中最常见的工作内容和操作方法,全书分为八章,具体内容如下:
第1章,大数据预处理概述。本章介绍大数据预处理的目的和主要内容,并介绍了本书使用到的案例数据集。
第2章,缺失值及其处理方法。本章首先介绍数据缺失的原因和对数据分析的影响,继而介绍使用简单统计量、聚类分析模型、回归模型、GBDT模型等对缺失值进行填补的方法;最后介绍提取缺失值信息的目的及方法。
第3章,数据纠错与格式处理。本章首先介绍数据错误的种类、概念,以及日期时间型数据的概念;然后分别具体介绍数据逻辑纠错、格式纠错的方法和Python中日期时间型的特征及应用方法。
第4章,数据类型转换。本章首先介绍数据类型转换的含义及作用,数据及其变量的类型;然后具体介绍如何使用客观法和主观法对数据进行离散化,以及定性变量形式间转换的方法。
第5章和第6章,介绍四种异常分布数据的概念、特征、影响和对其进行处理的方法。这四种异常分布数据分别为低频分类数据、高偏度数据、异常值和不平衡数据。
第7章,数据特征缩放。本章将分别介绍五种数据特征缩放方法,分别为数据中心化、数据标准化、Min-Max缩放、Max-ABS缩放和Robust缩放。
第8章,数据归约。本章介绍使用统计量、树模型和Lasso算法三种方式实现变量的筛选,以及基于寻找“足够的样本量”方法的样本归约方法,最后对“伪自变量”这一概念进行了阐述,并介绍识别伪自变量的方法。
前言
大数据预处理:基于Python的应用
本书包含大量案例,使用Python语言在Jupyter Notebook环境中编写相关代码,请读者自行安装并配置Python3以上的编程环境
读者可以参照《Python数据分析基础(第2版)》(阮敬编著,中国统计出版社,2018年8月出版)中1.1节的内容配置自己的Python编程环境。。在本书各章节中所包含的代码实例均使用类似“代码×.×”形式编号,代码会展示在以灰色为底色的矩形框中;除图、表形式以外的代码执行结果也展示在以灰色为底色的矩形框中,并以“代码执行结果×.×”形式编号;图、表形式的代码执行结果则以“图×.×”和“表×.×”形式编号。在每章第一节将介绍该章用到的代码库。读者基于以上信息,可以在自己的电脑中配置实验环境,并基于本书的案例代码和数据进行练习。
本书在撰写过程中,得到首都经济贸易大学统计学院周振坤老师的很多帮助,在此表示由衷的感谢。虽然笔者对于本书倾注了大量热情和努力,但由于自身水平有限,书中难免会存在许多的不足甚至错误,恳请广大读者批评指正!
本教材为使用者准备了相关辅助性学习资料,需要者可与首都经济贸易大学出版社联系。