描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111568315丛书名: 数据科学与工程技术丛书
内容简介
本书通过简单直观的R代码、逐渐深入的讲解以及省时省力的方法,提供了大量数据分析样例,终帮助你高效地解决各类数据问题。第1章介绍了如何创建R函数,避免不必要的代码重复。你会学到如何借助R程序包在各种数据源上准备、处理和执行复杂的ETL操作。后面的章节介绍了财务数据的时间序列分析,同时还介绍了机器学习的几个热点,例如数据分类、回归、聚类、关联规则挖掘、降维等。本书的结尾中,你会学到如何解决实际问题,并能够在数据分析过程中轻松地给出解决方案。
目 录
目 录
推荐序
译者序
前言
第1章 R中的函数1
1.1引言1
1.2 创建R函数2
1.3 匹配参数3
1.4 理解环境5
1.5 使用词法域8
1.6 理解闭包10
1.7 执行延迟计算12
1.8 创建中缀操作符13
1.9 使用替代函数15
1.10 处理函数中的错误17
1.11 调试函数21
第2章 数据抽取、转换和加载28
2.1 引言28
2.2 下载公开数据28
2.3 读取和写入CSV文件31
2.4 扫描文本文件32
2.5 使用Excel文件34
2.6 从数据库中读取数据36
2.7 爬取网络数据38
2.8 获取Facebook数据44
2.9 使用twitteR49
第3章 数据预处理和准备53
3.1 引言53
3.2 重命名数据变量53
3.3 转换数据类型55
3.4 使用日期格式57
3.5 添加新的记录58
3.6 过滤数据60
3.7 舍弃数据63
3.8 合并数据64
3.9 排列数据65
3.10 重塑数据67
3.11 检测缺失数据69
3.12 估计缺失数据71
第4章 数据操作74
4.1 引言74
4.2 使用data.table加强data.frame74
4.3 使用data.table管理数据77
4.4 使用data.table执行快速聚合82
4.5 使用data.table合并大型数据集85
4.6 使用dplyr进行数据抽取和切片88
4.7 使用dplyr进行数据抽样91
4.8 使用dplyr选取列92
4.9 使用dplyr进行链式操作94
4.10 使用dplyr整理行95
4.11 使用dplyr消除重复行97
4.12 使用dplyr添加新列98
4.13 使用dplyr汇总数据99
4.14 使用dplyr合并数据102
第5章 使用ggplot2可视化数据105
5.1 引言105
5.2 使用ggplot2创建基础图形106
5.3 改变美学映射109
5.4 引入几何对象112
5.5 执行变换116
5.6 调整图形尺度118
5.7 分面120
5.8 调整主题122
5.9 组合图形124
5.10 创建地图126
第6章 制作交互式报告131
6.1 引言131
6.2 创建R Markdown报告131
6.3 学习markdown语法135
6.4 嵌入R代码块137
6.5 使用ggvis创建交互式图形140
6.6 理解基础语法143
6.7 控制坐标轴和图例148
6.8 使用尺度153
6.9 给ggvis图形添加交互154
6.10 创建R Shiny文档159
6.11 发布R Shiny报告164
第7章 概率分布模拟169
7.1 引言169
7.2 生成随机样本169
7.3 理解均匀分布171
7.4 生成二项随机变量173
7.5 生成泊松随机变量175
7.6 从正态分布中抽样177
7.7 从卡方分布中抽样183
7.8 理解学生t-分布185
7.9 从数据集中抽样187
7.10 模拟随机过程188
第8章 R中的统计推断191
8.1 引言191
8.2 获取置信区间191
8.3 执行Z-检验196
8.4 执行学生T-检验199
8.5 执行精确二项检验202
8.6 执行Kolmogorov-Smirnov检验203
8.7 使用Pearson卡方检验205
8.8 理解Wilcoxon秩和检验207
8.9 执行单因素方差分析209
8.10 执行双因素方差分析212
第9章 R语言规则和模式挖掘216
9.1 引言216
9.2 把数据转换为事务216
9.3 展示事务和关联218
9.4 使用Apriori规则挖掘关联关系220
9.5 对冗余规则剪枝223
9.6 可视化关联规则224
9.7 使用Eclat挖掘频繁项集226
9.8 使用时序信息创建事务228
9.9 使用cSPADE挖掘频繁序列模式231
第10章 R语言时间序列挖掘235
10.1 引言235
10.2 创建时间序列数据235
10.3 绘制时间序列对象238
10.4 分解时间序列241
10.5 平滑时间序列243
10.6 预测时间序列247
10.7 选取ARIMA模型251
10.8 创建ARIMA模型255
10.9 使用ARIMA模型预测257
10.10 使用ARIMA模型预测股票价格260
第11章 监督式机器学习264
11.1 引言264
11.2 使用lm拟合线性回归模型264
11.3 汇总线性模型拟合266
11.4 使用线性回归来预测未知值268
11.5 度量回归模型的性能270
11.6 执行多元回归分析272
11.7 使用逐步回归选取拟合回归模型274
11.8 应用高斯模型泛化线性回归276
11.9 执行逻辑斯谛回归分析277
11.10 使用递归分割树构建分类模型280
11.11 可视化递归分割树282
11.12 使用混淆矩阵度量模型性能283
11.13 使用ROCR度量预测性能285
第12章 非监督式机器学习288
12.1 引言288
12.2 使用层次聚类法对数据聚类288
12.3 切割树成聚类291
12.4 使用k-means方法对数据聚类293
12.5 使用基于密度的方法对数据聚类294
12.6 从聚类中抽取轮廓信息296
12.7 比较多种聚类方法298
12.8 使用基于密度的聚类识别数字299
12.9 使用k-means聚类方法分组相似文本文档301
12.10 使用主成分分析法进行数据降维303
12.11 使用陡坡图确定主成分数量305
12.12 使用Kaiser方法确定主成分数量306
12.13 使用双标图可视化多变元数据308
推荐序
译者序
前言
第1章 R中的函数1
1.1引言1
1.2 创建R函数2
1.3 匹配参数3
1.4 理解环境5
1.5 使用词法域8
1.6 理解闭包10
1.7 执行延迟计算12
1.8 创建中缀操作符13
1.9 使用替代函数15
1.10 处理函数中的错误17
1.11 调试函数21
第2章 数据抽取、转换和加载28
2.1 引言28
2.2 下载公开数据28
2.3 读取和写入CSV文件31
2.4 扫描文本文件32
2.5 使用Excel文件34
2.6 从数据库中读取数据36
2.7 爬取网络数据38
2.8 获取Facebook数据44
2.9 使用twitteR49
第3章 数据预处理和准备53
3.1 引言53
3.2 重命名数据变量53
3.3 转换数据类型55
3.4 使用日期格式57
3.5 添加新的记录58
3.6 过滤数据60
3.7 舍弃数据63
3.8 合并数据64
3.9 排列数据65
3.10 重塑数据67
3.11 检测缺失数据69
3.12 估计缺失数据71
第4章 数据操作74
4.1 引言74
4.2 使用data.table加强data.frame74
4.3 使用data.table管理数据77
4.4 使用data.table执行快速聚合82
4.5 使用data.table合并大型数据集85
4.6 使用dplyr进行数据抽取和切片88
4.7 使用dplyr进行数据抽样91
4.8 使用dplyr选取列92
4.9 使用dplyr进行链式操作94
4.10 使用dplyr整理行95
4.11 使用dplyr消除重复行97
4.12 使用dplyr添加新列98
4.13 使用dplyr汇总数据99
4.14 使用dplyr合并数据102
第5章 使用ggplot2可视化数据105
5.1 引言105
5.2 使用ggplot2创建基础图形106
5.3 改变美学映射109
5.4 引入几何对象112
5.5 执行变换116
5.6 调整图形尺度118
5.7 分面120
5.8 调整主题122
5.9 组合图形124
5.10 创建地图126
第6章 制作交互式报告131
6.1 引言131
6.2 创建R Markdown报告131
6.3 学习markdown语法135
6.4 嵌入R代码块137
6.5 使用ggvis创建交互式图形140
6.6 理解基础语法143
6.7 控制坐标轴和图例148
6.8 使用尺度153
6.9 给ggvis图形添加交互154
6.10 创建R Shiny文档159
6.11 发布R Shiny报告164
第7章 概率分布模拟169
7.1 引言169
7.2 生成随机样本169
7.3 理解均匀分布171
7.4 生成二项随机变量173
7.5 生成泊松随机变量175
7.6 从正态分布中抽样177
7.7 从卡方分布中抽样183
7.8 理解学生t-分布185
7.9 从数据集中抽样187
7.10 模拟随机过程188
第8章 R中的统计推断191
8.1 引言191
8.2 获取置信区间191
8.3 执行Z-检验196
8.4 执行学生T-检验199
8.5 执行精确二项检验202
8.6 执行Kolmogorov-Smirnov检验203
8.7 使用Pearson卡方检验205
8.8 理解Wilcoxon秩和检验207
8.9 执行单因素方差分析209
8.10 执行双因素方差分析212
第9章 R语言规则和模式挖掘216
9.1 引言216
9.2 把数据转换为事务216
9.3 展示事务和关联218
9.4 使用Apriori规则挖掘关联关系220
9.5 对冗余规则剪枝223
9.6 可视化关联规则224
9.7 使用Eclat挖掘频繁项集226
9.8 使用时序信息创建事务228
9.9 使用cSPADE挖掘频繁序列模式231
第10章 R语言时间序列挖掘235
10.1 引言235
10.2 创建时间序列数据235
10.3 绘制时间序列对象238
10.4 分解时间序列241
10.5 平滑时间序列243
10.6 预测时间序列247
10.7 选取ARIMA模型251
10.8 创建ARIMA模型255
10.9 使用ARIMA模型预测257
10.10 使用ARIMA模型预测股票价格260
第11章 监督式机器学习264
11.1 引言264
11.2 使用lm拟合线性回归模型264
11.3 汇总线性模型拟合266
11.4 使用线性回归来预测未知值268
11.5 度量回归模型的性能270
11.6 执行多元回归分析272
11.7 使用逐步回归选取拟合回归模型274
11.8 应用高斯模型泛化线性回归276
11.9 执行逻辑斯谛回归分析277
11.10 使用递归分割树构建分类模型280
11.11 可视化递归分割树282
11.12 使用混淆矩阵度量模型性能283
11.13 使用ROCR度量预测性能285
第12章 非监督式机器学习288
12.1 引言288
12.2 使用层次聚类法对数据聚类288
12.3 切割树成聚类291
12.4 使用k-means方法对数据聚类293
12.5 使用基于密度的方法对数据聚类294
12.6 从聚类中抽取轮廓信息296
12.7 比较多种聚类方法298
12.8 使用基于密度的聚类识别数字299
12.9 使用k-means聚类方法分组相似文本文档301
12.10 使用主成分分析法进行数据降维303
12.11 使用陡坡图确定主成分数量305
12.12 使用Kaiser方法确定主成分数量306
12.13 使用双标图可视化多变元数据308
前 言
前 言大数据、物联网、人工智能已经变成近几年热门的科技流行语。尽管大家用很多名词去定义这些技术,但是共通的思想是它们都是数据驱动的。人们并不满足于简单地拥有数据,因为发现其中的价值才是本质的。因此数据科学家已经开始关注如何从原始数据中洞悉深层价值。
数据科学已经变成学术界和产业界流行的话题。但是数据科学是一门非常宽泛的学科,学会掌握数据科学注定很有挑战性。初学者必须学习如何准备、处理、聚合和可视化数据。而更多高级技能包括机器学习,挖掘各种数据格式(文本、图像和视频),以及重要的—使用数据产生商业价值。数据科学家的角色需要大量的努力,同时,一名成功的数据科学家也需要一个有力的工具来解决日常问题。
在这个领域中,数据科学家使用广泛的工具是开源而且免费的R语言。作为一种机器语言,R提供了许多数据处理函数、学习库和可视化函数,允许用户快速上手分析数据。R可以帮助用户快速执行分析,并在不需要懂得复杂数学模型细节的前提下执行机器学习算法。
本书给出了实际方案,教你如何使用R语言将数据科学落地。全书共12章,每一章都分成几个简单的教程。通过每一个教程循序渐进的介绍,你可以使用R的程序包,掌握书中所教授的技术。
本书首先介绍如何创建R函数来避免不必要的代码重复。你会学到如何使用R程序包,在各种数据源上准备数据、处理数据和执行高级ETL操作。数据操作的一个例子是介绍如何使用dplyr和data.table程序包有效地处理大型数据结构。还有一章关注ggplot2,介绍如何创建高级图形,进行数据展示。你也会学到如何使用ggvis程序包构建交互式报告。
本书也会介绍如何使用数据挖掘技术发现经常一起购买的产品。后面的章节还给出了财务数据的时间序列分析结果。还有一些章节会深入介绍机器学习技术,包括数据分类、回归、聚类和降维。我可以保证,本书会让你觉得,数据科学学习原来如此简单。
主要内容第1章介绍如何创建R函数。该章会介绍R函数的基本构成、环境和参数匹配。我们还会介绍高级技术,例如闭包、函数式编程和如何处理错误。
第2章介绍如何使用R读取结构化和非结构化的数据。该章首先介绍从文本文件中读取数据。然后,介绍如何把R和数据库连接起来。后,你会学到如何编写网络爬虫,爬取网页和社交网络上的非结构化数据。
第3章介绍分析前的数据准备工作。在该章中,我们会介绍数据预处理过程,使用基本的R函数,进行例如类型转换、添加、过滤、舍弃、重塑和缺失值估计。
第4章介绍如何使用高级程序包data.table和dplyr有效而且高效地操作数据。data.table提供了快速加载和聚合大型数据的可能。dplyr程序包提供了以类似SQL的语法操作数据的能力。
第5章介绍使用ggplot2可视化数据。首先介绍ggplot2的基本构成。然后,介绍高级技术,使用ggplot2函数创建复杂的图形。后,介绍如何使用ggmap构建地图。
第6章展示如何使用R创建一份专业的报告。首先,讨论如何使用R markdown语法,嵌入R代码块。然后,介绍如何使用ggvis添加交互式图表。后,介绍如何创建和发布R Shiny报告。
第7章关注如何从不同的概率分布上抽样数据。作为一个具体的例子,我们会介绍如何使用概率函数模拟随机交易过程。
第8章首先讨论点估计和置信区间。然后,介绍参数和非参数检验方法。后,介绍如何使用ANOVA分析工程师的收入是否会随着头衔和地区的变化而不同。
第9章介绍用于发现交易数据中关联项和暗藏的频率模式的常用方法。在该章中,我们会使用一个实际例子,以便你可以学到如何在实际的数据集中执行规则和模式挖掘。
第10章首先介绍如何从财务数据集中创建和操作时间序列。然后介绍如何使用HoltWinters和ARIMA预测时间序列。该章会通过一个实际例子介绍如何使用ARIMA预测股票价格。
第11章介绍如何构建基于标注训练数据的预测模型。你会学到如何使用回归模型理解数值关系,并使用拟合模型进行连续值预测。对于分类任务,你会学到如何拟合数据,生成一个树形分类器。
第12章介绍未标注数据的隐含结构。首先,介绍如何使用聚类方法对位置临近的旅馆进行分组。然后,介绍如何使用PCA方法选取和抽取经济自由度数据集中的特征。
机器环境要学习本书中的例子,你需要一台可以访问互联网的计算机,而且可以安装R环境。你可以通过http://www.cran.rproject.org/下载R安装文件。具体安装信息可以在第1章中找到。
本书中的例子是在Microsoft Windows和R 3.2.4的基础上编写和测试的。这些例子也可以在Mac OS X或者类似于UNIX的操作系统下,使用的R版本编译通过。
读者人群本书是面向已经熟悉R语言的基础操作,但是希望学习如何使用R程序包有效而且高效地分析现实世界数据问题的读者。
行文结构在本书中,你会发现一些标题经常出现(如准备工作、实现步骤、运行原理、更多技能和扩展阅读)。
为了清楚地介绍如何完成每一个教程的学习,我们使用以下行文结构:
准备工作这个部分会告诉你当前教程需要的东西,并介绍如何安装软件和本教程所需的基础环境。
实现步骤这个部分包括本教程所需的步骤。
运行原理这个部分通常包含对前一个部分的具体解释。
更多技能这个部分包含本教程的额外信息,以便扩展读者关于当前教程的知识面。
扩展阅读这个部分提供了指向其他有用信息的链接。
本书约定在本书中,你会发现文本有多种风格,以提供不同的信息。这里给出一些风格的例子,并给出其中的含义。
程序包和函数名风格如下:“你可以安装加载程序包RCurl”。
代码块设置如下:
> install.packages(“RCurl”)> library(RCurl)屏幕中的词语,例如菜单或者对话框,文本做如下展示:”在R中,缺失值使用NA(不适用)标记,不可能的值用NaN(不是一个值)标记 ”。
样例源码下载你可以从http://www.packtpub.com通过个人账号下载你所购买书籍的样例源码。如果你是从其他途径购买的,可以访问http://www.packtpub.com/support,完成账号注册,就可以直接通过邮件方式获得相关文件。
你也可以访问华章图书官网http://www.hzbook.com,通过注册并登录个人账号,下载本书的源代码。
下载书中彩图我们还为读者准备了一个PDF文件,该文件包含了本书所有截图和样图,可以更好地帮助读者理解输出的变化。你可以从以下地址下载:http://www.packtpub.com/sites/default/files/downloads/RforDataScienceCookbook_ColorImages.pdf。
数据科学已经变成学术界和产业界流行的话题。但是数据科学是一门非常宽泛的学科,学会掌握数据科学注定很有挑战性。初学者必须学习如何准备、处理、聚合和可视化数据。而更多高级技能包括机器学习,挖掘各种数据格式(文本、图像和视频),以及重要的—使用数据产生商业价值。数据科学家的角色需要大量的努力,同时,一名成功的数据科学家也需要一个有力的工具来解决日常问题。
在这个领域中,数据科学家使用广泛的工具是开源而且免费的R语言。作为一种机器语言,R提供了许多数据处理函数、学习库和可视化函数,允许用户快速上手分析数据。R可以帮助用户快速执行分析,并在不需要懂得复杂数学模型细节的前提下执行机器学习算法。
本书给出了实际方案,教你如何使用R语言将数据科学落地。全书共12章,每一章都分成几个简单的教程。通过每一个教程循序渐进的介绍,你可以使用R的程序包,掌握书中所教授的技术。
本书首先介绍如何创建R函数来避免不必要的代码重复。你会学到如何使用R程序包,在各种数据源上准备数据、处理数据和执行高级ETL操作。数据操作的一个例子是介绍如何使用dplyr和data.table程序包有效地处理大型数据结构。还有一章关注ggplot2,介绍如何创建高级图形,进行数据展示。你也会学到如何使用ggvis程序包构建交互式报告。
本书也会介绍如何使用数据挖掘技术发现经常一起购买的产品。后面的章节还给出了财务数据的时间序列分析结果。还有一些章节会深入介绍机器学习技术,包括数据分类、回归、聚类和降维。我可以保证,本书会让你觉得,数据科学学习原来如此简单。
主要内容第1章介绍如何创建R函数。该章会介绍R函数的基本构成、环境和参数匹配。我们还会介绍高级技术,例如闭包、函数式编程和如何处理错误。
第2章介绍如何使用R读取结构化和非结构化的数据。该章首先介绍从文本文件中读取数据。然后,介绍如何把R和数据库连接起来。后,你会学到如何编写网络爬虫,爬取网页和社交网络上的非结构化数据。
第3章介绍分析前的数据准备工作。在该章中,我们会介绍数据预处理过程,使用基本的R函数,进行例如类型转换、添加、过滤、舍弃、重塑和缺失值估计。
第4章介绍如何使用高级程序包data.table和dplyr有效而且高效地操作数据。data.table提供了快速加载和聚合大型数据的可能。dplyr程序包提供了以类似SQL的语法操作数据的能力。
第5章介绍使用ggplot2可视化数据。首先介绍ggplot2的基本构成。然后,介绍高级技术,使用ggplot2函数创建复杂的图形。后,介绍如何使用ggmap构建地图。
第6章展示如何使用R创建一份专业的报告。首先,讨论如何使用R markdown语法,嵌入R代码块。然后,介绍如何使用ggvis添加交互式图表。后,介绍如何创建和发布R Shiny报告。
第7章关注如何从不同的概率分布上抽样数据。作为一个具体的例子,我们会介绍如何使用概率函数模拟随机交易过程。
第8章首先讨论点估计和置信区间。然后,介绍参数和非参数检验方法。后,介绍如何使用ANOVA分析工程师的收入是否会随着头衔和地区的变化而不同。
第9章介绍用于发现交易数据中关联项和暗藏的频率模式的常用方法。在该章中,我们会使用一个实际例子,以便你可以学到如何在实际的数据集中执行规则和模式挖掘。
第10章首先介绍如何从财务数据集中创建和操作时间序列。然后介绍如何使用HoltWinters和ARIMA预测时间序列。该章会通过一个实际例子介绍如何使用ARIMA预测股票价格。
第11章介绍如何构建基于标注训练数据的预测模型。你会学到如何使用回归模型理解数值关系,并使用拟合模型进行连续值预测。对于分类任务,你会学到如何拟合数据,生成一个树形分类器。
第12章介绍未标注数据的隐含结构。首先,介绍如何使用聚类方法对位置临近的旅馆进行分组。然后,介绍如何使用PCA方法选取和抽取经济自由度数据集中的特征。
机器环境要学习本书中的例子,你需要一台可以访问互联网的计算机,而且可以安装R环境。你可以通过http://www.cran.rproject.org/下载R安装文件。具体安装信息可以在第1章中找到。
本书中的例子是在Microsoft Windows和R 3.2.4的基础上编写和测试的。这些例子也可以在Mac OS X或者类似于UNIX的操作系统下,使用的R版本编译通过。
读者人群本书是面向已经熟悉R语言的基础操作,但是希望学习如何使用R程序包有效而且高效地分析现实世界数据问题的读者。
行文结构在本书中,你会发现一些标题经常出现(如准备工作、实现步骤、运行原理、更多技能和扩展阅读)。
为了清楚地介绍如何完成每一个教程的学习,我们使用以下行文结构:
准备工作这个部分会告诉你当前教程需要的东西,并介绍如何安装软件和本教程所需的基础环境。
实现步骤这个部分包括本教程所需的步骤。
运行原理这个部分通常包含对前一个部分的具体解释。
更多技能这个部分包含本教程的额外信息,以便扩展读者关于当前教程的知识面。
扩展阅读这个部分提供了指向其他有用信息的链接。
本书约定在本书中,你会发现文本有多种风格,以提供不同的信息。这里给出一些风格的例子,并给出其中的含义。
程序包和函数名风格如下:“你可以安装加载程序包RCurl”。
代码块设置如下:
> install.packages(“RCurl”)> library(RCurl)屏幕中的词语,例如菜单或者对话框,文本做如下展示:”在R中,缺失值使用NA(不适用)标记,不可能的值用NaN(不是一个值)标记 ”。
样例源码下载你可以从http://www.packtpub.com通过个人账号下载你所购买书籍的样例源码。如果你是从其他途径购买的,可以访问http://www.packtpub.com/support,完成账号注册,就可以直接通过邮件方式获得相关文件。
你也可以访问华章图书官网http://www.hzbook.com,通过注册并登录个人账号,下载本书的源代码。
下载书中彩图我们还为读者准备了一个PDF文件,该文件包含了本书所有截图和样图,可以更好地帮助读者理解输出的变化。你可以从以下地址下载:http://www.packtpub.com/sites/default/files/downloads/RforDataScienceCookbook_ColorImages.pdf。
评论
还没有评论。