首页>参考读物>计算机科学与技术>软件与程序设计

数据科学导论:Python语言实现
作者 : [意] 阿尔贝托·博斯凯蒂(Alberto Boschetti) 卢卡·马萨罗(Luca Massaron)著
译者 : 于俊伟 靳小波 译
出版日期 : 2016-08-09
ISBN : 978-7-111-54434-0
定价 : 49.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 194
开本 : 16
原书名 : Python Data Science Essentials
原出版社: Packt Publishing Ltd.
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

图书特色

本书首先介绍如何设置基本的数据科学工具箱,然后带你进入数据改写和预处理阶段,这一部分主要是阐明所有与核心数据科学活动相关的数据分析过程,如数据加载、转换、修复以及数据探索和处理等。最后,通过主要的机器学习算法、图形分析技术,以及所有易于表现结果的可视化工具,实现对数据科学的概述。
本书行文过程以数据科学项目为主体,辅以整洁的代码和简化的示例,能帮助你理解与项目相关的潜在原理和实际数据集。

通过阅读本书,你将学到:
使用Windows、Mac和Linux系统上的Python科学环境设置数据科学工具箱
为数据科学项目准备数据
为了解决数据科学问题,进行数据操作、修复和探索
建立实验流程来检验数据科学假设
为数据科学任务选择最有效和可扩展的学习算法
优化机器学习模型,以获得最佳性能
进行图的探索和聚集分析,充分利用数据中的联系和连接

内容简介
本书由两位资深数据科学家撰写,融合其多年从事数据科学相关的教学和科研工作经验,借助现有的Python语法和结构知识,全面而系统地讲解进行数据科学分析和开发的相关工具、技术和最佳实践,包含清晰的代码和简化的示例。通过阅读本书,你将深入理解Python核心概念,成为高效数据科学实践者。
本书共6章,系统介绍了进行数据科学分析和开发所涉及的关键要素。书中首先介绍Python软件及相关工具包的安装和使用;接着不仅讲解数据加载、运算和改写等基本数据准备过程,还详细介绍特征选择、维数约简等高级数据操作方法;并且建立了由训练、验证、测试等过程组成的数据科学流程,结合具体示例深入浅出地讲解了多种机器学习算法;然后介绍了基于图模型的社会网络创建、分析和处理方法;最后讲解数据分析结果的可视化及相关工具的使用方法。

作者简介
Alberto Boschetti 数据科学家、信号处理和统计学方面的专家。他拥有通信工程专业博士学位,现在伦敦居住和工作。基于所从事的项目,他每天都要面对包括自然语言处理、机器学习和概率图模型等方面的挑战。他对工作充满激情,经常参加学术聚会、研讨会等学术活动,紧跟数据科学技术发展的前沿。
Luca Massaron 数据科学家、市场研究总监,是多元统计分析、机器学习和客户洞察方面的专家,有十年以上解决实际问题的经验,使用推理、统计、数据挖掘和算法为利益相关者创造了巨大的价值。他是意大利网络受众分析的先锋,并在Kaggler上获得排名前十的佳绩,随后一直热心参与一切与数据分析相关的活动,积极给新手和专业人员讲解数据驱动知识发现的潜力。他崇尚大道至简,坚信理解数据科学的本质能带来巨大收获。

图书前言

“千里之行,始于足下。”
—老子(公元前604—531年)
数据科学属于相对较新的知识领域,它需要成功融合线性代数、统计建模、可视化、计算语言学、图形分析、机器学习、商业智能、数据存储和检索等众多学科。
Python编程语言在过去十年已经征服了科学界,它现在是数据科学实践者不可或缺的工具,也是每一个有抱负的数据科学家的必备工具。Python为数据分析、机器学习和算法问题求解提供了快速、可靠、跨平台、成熟的开发环境。无论之前数据科学应用中阻止你掌握Python的原因是什么,这些都将通过我们简单的分步化解和示例导向的方法来解决,我们将帮助你在演示数据集和实际数据集上使用最直接有效的Python工具。
借助你现有的Python语法和结构知识(不要担心,如果你需要获取更多的Python知识,我们有一些Python教程),本书将从介绍建立基本的数据科学工具箱开始。接着,它将引导你进入完整的数据改写和预处理阶段。我们还需要花一定量的时间来解释数据类型的转换、修复、探索和处理等核心活动。然后,我们将演示高级数据科学操作,建立变量和假设选择的实验流程,优化超参数,有效地使用交叉验证和测试。最后,我们将完成数据科学精要的概述,介绍主要的机器学习算法、图的分析技术和所有用于呈现结果的可视化方法。
在数据科学项目的具体演示过程中,永远都伴有清晰的代码和简化的例子,以帮助你理解项目背后的机制和实际数据集。本书也会给你一些经验提示,帮助你立即上手当前的项目。准备好了吗?相信你已经准备踏上这个漫长而又值得期待的旅程了。
本书内容
第1章介绍所有必需的基础工具(用于交互计算的shell命令、库和数据集),使用Python可以立即开始数据科学分析。
第2章阐明如何加载要处理的数据,当数据太大计算机不能处理时要采用替代技术。本章介绍了所有主要的数据操作和转换技术。
第3章提供了高级数据探索和操作技术,使用复杂的数据操作进行特征创建和精简、数据异常检测、验证技术应用等。
第4章带你学习Scikit-learn库中最重要的学习算法,演示了实际应用以及为了获得每种机器学习技术的最佳结果,指出了应该重点检查的关键数值和要调试的参数。
第5章详细介绍了一些实用又有效的数据处理技术,用于处理表示社会实体之间的关系或相互作用的数据。
第6章利用图形化表示完善数据科学概述。如果你想形象地表示复杂的数据结构、机器学习过程和结果,这些可视化技术是不可或缺的。
阅读准备
本书提到的Python及其他数据科学工具,从IPython到Scikit-learn都能在网上免费下载。要运行本书附带的源代码,需要一台带有Windows、Linux或Mac OS操作系统的计算机。本书将分步介绍Python解释器以及运行示例所需要的其他工具和数据的安装过程。
读者对象
本书基于你已经具备的一些核心技能,能使你变成高效的数据科学从业者。因此,我们假定你具有编程和统计学方面的基础知识。
本书提供的示例代码不需要你精通Python语言,但是假设你至少了解一些基础知识,如Python脚本编写、列表和字典数据结构、类对象的工作原理等。在阅读本书之前,花几个小时学习一下第1章推荐的网络课程,就可以快速获得这些知识,当然也可以学习其他相关教程。
本书并不需要高级数据科学的概念,我们提供的信息足够帮助你理解本书示例用到的核心概念。
总的来说,本书适合以下人员:
有较少的Python编程经验和数据分析知识,但还没有数据科学算法等专业知识,有志于成为数据科学家的新手。
能熟练运用R和Matlab等工具进行统计建模、愿意利用Python进行数据科学处理的数据分析师。
有意学习数据操作和机器学习、不断拓展知识面的开发者和程序员。
代码下载
读者可登录华章网站http://www.hzbook.com下载本书示例代码。

上架指导

计算机/数据分析

封底文字

本书首先介绍如何设置基本的数据科学工具箱,然后带你进入数据改写和预处理阶段,这一部分主要是阐明所有与核心数据科学活动相关的数据分析过程,如数据加载、转换、修复以及数据探索和处理等。最后,通过主要的机器学习算法、图形分析技术,以及所有易于表现结果的可视化工具,实现对数据科学的概述。
本书行文过程以数据科学项目为主体,辅以整洁的代码和简化的示例,能帮助你理解与项目相关的潜在原理和实际数据集。

通过阅读本书,你将学到:
ü 使用Windows、Mac和Linux系统上的Python科学环境设置数据科学工具箱
ü 为数据科学项目准备数据
ü 为了解决数据科学问题,进行数据操作、修复和探索
ü 建立实验流程来检验数据科学假设
ü 为数据科学任务选择最有效和可扩展的学习算法
ü 优化机器学习模型,以获得最佳性能
ü 进行图的探索和聚集分析,充分利用数据中的联系和连接

作者简介

[意] 阿尔贝托·博斯凯蒂(Alberto Boschetti) 卢卡·马萨罗(Luca Massaron)著:暂无简介

译者简介

于俊伟 靳小波 译:暂无简介

译者序

我们正处于一个快速发展的信息化时代,人们每天都在生产着各种类型的数据,与此同时,数据也在极大地影响着我们的生活。于是,数据成为与能源同等重要的资源。掌握了数据获取、处理、建模、分析等过程的理论和方法,无疑就是掌握了打开这种新型资源的钥匙。
数据科学是融合多种学科的新的知识领域,一般要求学习者或从业者具备统计学等数学知识、计算机相关学科专业知识和特定业务领域的知识。目前,数据科学领域的研究和应用备受瞩目,吸引了众多研究者、实践者和从业者的参与,他们都在积极探索数据科学的基本理论、研究方法和技术应用。
工欲善其事,必先利其器。那么,什么才是数据科学家最值得信赖的专业工具呢?Python无疑是众多数据分析语言中最适合的一个。Python是一种通用的、解释性和面向对象的语言,具有强大的数据分析和机器学习软件包,为解决各种数据科学问题提供了快速、可靠、成熟的开发环境。它易学易用,便于快速开发,有很好的交互式体验,已经征服了科学界,堪称解决数据科学问题的神器。
本书介绍了进行数据科学分析和开发的所有关键要点,包括Python软件及相关工具包的安装和使用;不仅包含数据加载、运算和改写等基本数据准备过程,还有特征选择、维数约简等高级数据操作方法;建立了由训练、验证、测试等过程组成的数据科学流程,结合示例深入浅出地讲解了多种机器学习算法;介绍了基于图模型的社会网络创建、分析和处理方法;最后是数据分析结果的可视化及相关工具使用方法的介绍。
本书作者是两位意大利数据科学专家,他们长期从事与数据科学相关的教学和科研工作,在Python社区、社交网络上也很活跃,发表了多篇学术论文和著作,对数据科学相关人员影响很大。本书是作者多年实践经验的总结,具有以下特点:1)循序渐进,深入浅出,让初学者不畏惧,让从业者得要领。2)理论与实践相结合,几乎所有算法和理论都辅以简洁的实例和说明,通过简单的几行代码即可验证。3)深入理解数据科学概念,轻松进行理论扩展,快速建立自己的工程,使读者做到学以致用,促进多种形式的科学研究和应用开发。
无论是作为数据科学和机器学习理论研究者的参考书,还是作为使用Python进行数据科学应用开发人员的工具书,抑或作为有志成为数据科学家的初学者的指导书,本书都能提供非常有价值的参考。本书还可以作为高等院校相关学科本科生或研究生的学习教材,特别适合从事数据科学、信息处理和机器学习等方向的研究生进行学习和参考。
本书第4章由河南工业大学信息科学与工程学院靳小波博士翻译,其余章节由河南工业大学信息科学与工程学院于俊伟博士翻译。由于译者水平有限,加之时间仓促,错误和疏漏在所难免,恳请读者批评指正。
本书的翻译工作受到国家自然科学基金项目(61300123)的资助。还要感谢机械工业出版社华章分社的编辑为本书出版付出的辛勤劳动。
最后,要特别感谢爱人刘楠及女儿Cynthia对我工作的理解和支持!

于俊伟
2016年3月

图书目录

译者序
前言
第1章 新手上路1
1.1 数据科学与Python简介1
1.2 Python的安装2
1.2.1 Python 2还是Python 33
1.2.2 分步安装3
1.2.3 Python核心工具包一瞥4
1.2.4 工具包的安装7
1.2.5 工具包升级9
1.3 科学计算发行版9
1.3.1 Anaconda10
1.3.2 Enthought Canopy10
1.3.3 PythonXY10
1.3.4 WinPython10
1.4 IPython简介10
1.4.1 IPython Notebook12
1.4.2 本书使用的数据集和代码18
1.5 小结25
第2章 数据改写26
2.1 数据科学过程26
2.2 使用pandas进行数据加载与预处理27
2.2.1 数据快捷加载27
2.2.2 处理问题数据30
2.2.3 处理大数据集32
2.2.4 访问其他数据格式36
2.2.5 数据预处理37
2.2.6 数据选择39
2.3 使用分类数据和文本数据41
2.4 使用NumPy进行数据处理49
2.4.1 NumPy中的N维数组49
2.4.2 NumPy ndarray对象基础50
2.5 创建NumPy数组50
2.5.1 从列表到一维数组50
2.5.2 控制内存大小51
2.5.3 异构列表52
2.5.4 从列表到多维数组53
2.5.5 改变数组大小54
2.5.6 利用NumPy函数生成数组56
2.5.7 直接从文件中获得数组57
2.5.8 从pandas提取数据57
2.6 NumPy快速操作和计算58
2.6.1 矩阵运算60
2.6.2 NumPy数组切片和索引61
2.6.3 NumPy数组堆叠63
2.7 小结65
第3章 数据科学流程66
3.1 EDA简介66
3.2 特征创建70
3.3 维数约简72
3.3.1 协方差矩阵72
3.3.2 主成分分析73
3.3.3 一种用于大数据的PCA变型—Randomized PCA76
3.3.4 潜在因素分析77
3.3.5 线性判别分析77
3.3.6 潜在语义分析78
3.3.7 独立成分分析78
3.3.8 核主成分分析78
3.3.9 受限玻耳兹曼机80
3.4 异常检测和处理81
3.4.1 单变量异常检测82
3.4.2 EllipticEnvelope83
3.4.3 OneClassSVM87
3.5 评分函数90
3.5.1 多标号分类90
3.5.2 二值分类92
3.5.3 回归93
3.6 测试和验证93
3.7 交叉验证97
3.7.1 使用交叉验证迭代器99
3.7.2 采样和自举方法100
3.8 超参数优化102
3.8.1 建立自定义评分函数104
3.8.2 减少网格搜索时间106
3.9 特征选择108
3.9.1 单变量选择108
3.9.2 递归消除110
3.9.3 稳定性选择与基于L1的选择111
3.10 小结112
第4章 机器学习113
4.1 线性和逻辑回归113
4.2 朴素贝叶斯116
4.3 K近邻118
4.4 高级非线性算法119
4.4.1 基于SVM的分类算法120
4.4.2 基于SVM的回归算法122
4.4.3 调整SVM123
4.5 组合策略124
4.5.1 基于随机样本的粘合策略125
4.5.2 基于弱组合的分袋策略125
4.5.3 随机子空间和随机分片126
4.5.4 模型序列—AdaBoost127
4.5.5 梯度树提升128
4.5.6 处理大数据129
4.6 自然语言处理一瞥136
4.6.1 词语分词136
4.6.2 词干提取137
4.6.3 词性标注137
4.6.4 命名实体识别138
4.6.5 停止词139
4.6.6 一个完整的数据科学示例—文本分类140
4.7 无监督学习概述141
4.8 小结146
第5章 社会网络分析147
5.1 图论简介147
5.2 图的算法152
5.3 图的加载、输出和采样157
5.4 小结160
第6章 可视化161
6.1 matplotlib基础介绍161
6.1.1 曲线绘图162
6.1.2 绘制分块图163
6.1.3 散点图164
6.1.4 直方图165
6.1.5 柱状图166
6.1.6 图像可视化167
6.2 pandas的几个图形示例169
6.2.1 箱线图与直方图170
6.2.2 散点图171
6.2.3 平行坐标173
6.3 高级数据学习表示174
6.3.1 学习曲线174
6.3.2 验证曲线176
6.3.3 特征重要性177
6.3.4 GBT部分依赖关系图179
6.4 小结180

教学资源推荐
作者: 马玉春 李壮 张鲲 黄应红 编著
作者: John R.Hubbard
参考读物推荐
作者: 杜文 编著
作者: [美]马尔奇·哈弗贝克(Marijn Haverbeke)著
作者: 大学霸IT达人 编著