内容简介
“大数据”已连年入选IT领域的热点话题,人们每天都会通过互联网、移动设备等生产大量数据。如何从海量数据中洞悉出隐藏其后的见解是当今社会各领域人士极为关注的话题。本系列图书以“大数据分析师”应掌握的IT技术为主线,共分两卷,以7个模块(第1卷包括4个模块,第2卷包括3个模块)分别介绍大数据入门,分析和R编程入门,使用R进行数据分析,用R进行高级分析,机器学习的概念,社交媒体、移动分析和可视化,大数据分析的行业应用等核心内容,全面且详尽地涵盖了大数据分析的各个领域。本书为第1卷,首先提供大数据的概览,介绍大数据概念及其在商业中的应用、处理大数据的技术、Hadoop生态系统和MapReduce的相关内容,然后介绍如何理解分析、分析方法与工具,重点讲解流行分析工具R,介绍如何将数据集导入R和从R导出数据、在R中如何劋纵和处理数据,最后详细介绍R中的函数和包、R的描述性统计、R中的图形分析、R中的假设检验、R中的线性回归、非线性回归、聚类分析、决策树、R和Hadoop的集成及Hive,通过这些实战内容,使读者掌握R语言在数据分析中的全面应用。通过本书,读者能对大数据概念、重要性及其应用有全面的了解,熟悉各种大数据分析工具。本书适用于想成为大数据分析师的人员以及所有对大数据分析感兴趣的技术人员和决策者阅读。
作者介绍
国际zhimingIT培训机构中的多名大牛讲师,通过对技术、IT市场需求以及当今就业培训方面的全球行业标准进行了广泛并严格的调研之后,开发而成。作者们的这些计划的构思目标是,成为理想的就业能力培训项目,为那些有志于在国际IT行业取得事业成功的人提供服务。
目录
- 模块1 大数据入门
- 第1讲 大数据简介 3
- 1.1 什么是大数据 4
- 1.1.1 大数据的优势 5
- 1.1.2 挖掘各种大数据源 6
- 1.2 数据管理的历史——大数据的演化 7
- 1.3 大数据的结构化 9
- 1.4 大数据要素 13
- 1.4.1 数据量 13
- 1.4.2 速度 14
- 1.4.3 多样性 14
- 1.5 大数据在商务环境中的应用 14
- 1.6 大数据行业中的职业机会 16
- 1.6.1 职业机会 17
- 1.6.2 所需技能 17
- 1.6.3 大数据的未来 19
- 练习 20
- 备忘单 22
- 第2讲 大数据在商业上的应用 23
- 2.1 社交网络数据的重要性 24
- 2.2 金融欺诈和大数据 30
- 2.3 保险业的欺诈检测 32
- 2.4 在零*售业中应用大数据 36
- 练习 40
- 备忘单 42
- 第3讲 处理大数据的技术 43
- 3.1 大数据的分布式和并行计算 44
- 3.1.1 并行计算技术 46
- 3.1.2 虚拟化及其对大数据的重要性 47
- 3.2 Hadoop简介 47
- 3.3 云计算和大数据 50
- 3.3.1 大数据计算的特性 50
- 3.3.2 云部署模型 51
- 3.3.3 云交付模型 52
- 3.3.4 大数据云 52
- 3.3.5 大数据云市场中的供应商 53
- 3.3.6 使用云服务所存在的问题 54
- 3.4 大数据内存计算技术 54
- 练习 56
- 备忘单 58
- 第4讲 了解Hadoop生态系统 59
- 4.1 Hadoop生态系统 60
- 4.2 用HDFS存储数据 61
- 4.2.1 HDFS架构 62
- 4.2.2 HDFS的一些特殊功能 65
- 4.3 利用Hadoop MapReduce处理数据 65
- 4.3.1 MapReduce是如何工作的 66
- 4.3.2 MapReduce的优点和缺点 66
- 4.3.3 利用Hadoop YARN管理资源和应用 67
- 4.4 利用HBase存储数据 68
- 4.5 使用Hive查询大型数据库 69
- 4.6 与Hadoop生态系统的交互 70
- 4.6.1 Pig和Pig Latin 70
- 4.6.2 Sqoop 71
- 4.6.3 Zookeeper 72
- 4.6.4 Flume 72
- 4.6.5 Oozie 73
- 练习 74
- 备忘单 76
- 第5讲 MapReduce基础 77
- 5.1 MapReduce的起源 78
- 5.2 MapReduce是如何工作的 79
- 5.3 MapReduce作业的优化技术 85
- 5.3.1 硬件/网络拓扑 85
- 5.3.2 同步 86
- 5.3.3 文件系统 86
- 5.4 MapReduce的应用 86
- 5.5 HBase在大数据处理中的角色 87
- 5.6 利用Hive挖掘大数据 89
- 练习 91
- 备忘单 94
- 模块2 分析和R编程入门
- 第1讲 理解分析 97
- 1.1 分析与报告的对比 98
- 1.1.1 报告 99
- 1.1.2 分析 100
- 1.2 基本和高级分析 102
- 1.3 进行分析——需要考虑的事项 105
- 1.3.1 正确限定问题的范围 105
- 1.3.2 统计显著性还是业务重要性 105
- 1.3.3 样本与总体 107
- 1.3.4 推理与计算统计数字的对比 109
- 1.4 构建分析团队 110
- 1.4.1 成为分析师的必备技能 110
- 1.4.2 IT与分析的融合 111
- 练习 113
- 备忘单 115
- 第2讲 分析方法与工具 116
- 2.1 分析方法的演变 117
- 2.1.1 集成方法 117
- 2.1.2 商品化模型 118
- 2.1.3 文本分析 120
- 2.1.4 文本分析的挑战 121
- 2.2 分析工具的演变 122
- 2.3 分析工具分类 123
- 2.3.1 图形用户界面的兴起 123
- 2.3.2 点解决方案的大爆发 123
- 2.3.3 数据可视化工具 125
- 2.4 一些流行的分析工具 127
- 2.4.1 用于统计计算的R项目 127
- 2.4.2 IBM SPSS 128
- 2.4.3 SAS 130
- 2.5 分析工具之间的对比 131
- 练习 133
- 备忘单 135
- 第3讲 探索R 136
- 3.1 安装R 137
- 3.2 使用脚本工作 138
- 3.2.1 RGui 138
- 3.2.2 RStudio 140
- 3.2.3 “Hello world!” 141
- 3.2.4 简单数学运算 141
- 3.2.5 R中的数学运算 142
- 3.2.6 使用向量 143
- 3.2.7 保存和计算数值 144
- 3.2.8 回应用户 146
- 3.3 浏览工作区 149
- 3.3.1 操纵工作区内容 149
- 3.3.2 保存工作 150
- 3.3.3 检索工作 150
- 练习 151
- 备忘单 153
- 第4讲 将数据集读入R,从R导出数据 154
- 4.1 使用c()命令创建数据 155
- 4.1.1 输入数值项作为数据 155
- 4.1.2 输入文本项作为数据 156
- 4.2 在R中使用scan()命令获取数据 157
- 4.2.1 输入文本作为数据 158
- 4.2.2 使用剪贴板制作数据 158
- 4.2.3 从磁盘读取数据文件 160
- 4.3 读取更大的数据文件 162
- 4.3.1 read.csv()命令 163
- 4.3.2 在R中读取数据的其他命令 164
- 4.3.3 数据文件中的缺失值 167
- 4.4 从R导出数据 169
- 4.5 在R中保存你的工作 169
- 4.5.1 将数据文件保存到磁盘 170
- 4.5.2 保存命名对象 170
- 4.5.3 保存所有操作 170
- 4.5.4 以文本文件形式保存数据到磁盘 171
- 4.5.5 将向量对象写入磁盘 171
- 4.5.6 将矩阵和数据帧对象写入磁盘 172
- 4.5.7 将列表对象写入磁盘 172
- 练习 174
- 备忘单 176
- 第5讲 在R中操纵和处理数据 177
- 5.1 确定ZUI合适的数据结构 178
- 5.2 创建数据的子集 179
- 5.2.1 指定子集 179
- 5.2.2 构造数据帧的子集 180
- 5.2.3 从数据中取得样本 180
- 5.2.4 数据子集的应用 182
- 5.3 在数据中添加计算得到的字段 184
- 5.3.1 在数据帧列上执行算术运算 184
- 5.3.2 创建数据子组或者bin 184
- 5.4 在R中组合和合并数据集 186
- 5.4.1 创建样本数据以说明合并的方法 187
- 5.4.2 使用merge()函数 188
- 5.4.3 合并类型 189
- 5.4.4 使用查找表 190
- 5.5 分类和排序数据 190
- 5.5.1 向量的排序 191
- 5.5.2 数据帧的排序 191
- 5.5.3 用apply()函数遍历数据 193
- 5.6 公式接口简介 196
- 5.7 数据整形 196
- 5.7.1 理解长格式和宽格式数据 197
- 5.7.2 从reshape2程序包入手 198
- 5.7.3 将数据 “熔化”为长格式 199
- 练习 202
- 备忘单 204
- 模块3 使用R进行数据分析
- 第1讲 使用R中的函数和包 207
- 1.1 从脚本到函数 209
- 1.1.1 创建脚本 209
- 1.1.2 将脚本转变为函数 210
- 1.1.3 使用函数 211
- 1.1.4 减少行数 212
- 1.2 巧妙地使用参数 214
- 1.2.1 增加更多参数 214
- 1.2.2 使用点参数 216
- 1.2.3 使用函数作为参数 218
- 1.3 函数作用域 219
- 1.3.1 外部函数 219
- 1.3.2 使用内部函数 221
- 1.4 指派方法 222
- 1.4.1 寻找函数背后的方法 223
- 1.4.2 以UseMethod()函数使用方法 223
- 1.5 程序包 225
- 1.5.1 为Windows安装程序包 225
- 1.5.2 为Linux安装程序包 225
- 1.6 程序包的使用 227
- 1.6.1 加载程序包 227
- 1.6.2 卸载程序包 227
- 练习 228
- 备忘单 230
- 第2讲 R中的描述性统计 231
- 2.1 汇总命令 232
- 2.2 名称命令 234
- 2.3 汇总样本 235
- 2.4 累积统计信息 239
- 2.4.1 简单累计命令 239
- 2.4.2 复杂累积命令 241
- 2.5 数据帧的汇总统计 242
- 2.5.1 数据帧的通用汇总命令 242
- 2.5.2 专用的行和列汇总命令 243
- 2.5.3 用于行/列汇总的apply()命令 243
- 2.6 矩阵对象的汇总统计 244
- 2.7 列表的汇总统计 246
- 2.8 列联表 247
- 2.8.1 建立列联表 247
- 2.8.2 选择表对象的各个部分 253
- 2.8.3 测试表对象 255
- 2.8.4 复杂(扁平)表 256
- 2.8.5 测试“扁平”表对象 260
- 2.8.6 表的汇总命令 260
- 2.9 交叉表 262
- 练习 267
- 备忘单 269
- 第3讲 用函数、循环和数据帧分析数据 270
- 3.1 矩阵、列表和数据帧 271
- 3.1.1 矩阵 271
- 3.1.2 列表 272
- 3.1.3 数据帧——数据集 273
- 3.2 向量、矩阵和列表的索引 273
- 3.2.1 向量的索引 273
- 3.2.2 矩阵的索引 274
- 3.2.3 列表的索引 275
- 3.3 R编程 276
- 3.3.1 表达式、赋值和算术运算符 276
- 3.3.2 成组的表达式 277
- 3.3.3 条件执行——if和ifelse 278
- 3.3.4 重复执行——循环 278
- 3.4 RHadoop 280
- 3.4.1 安装RHadoop 281
- 3.4.2 创建用户定义函数 281
- 练习 283
- 备忘单 285
- 第4讲 R中的图形分析 286
- 4.1 为单变量绘图 287
- 4.1.1 直方图 288
- 4.1.2 索引图 292
- 4.1.3 时间序列图 293
- 4.1.4 饼图 294
- 4.1.5 stripchart函数 294
- 4.2 绘制双变量图表 295
- 4.2.1 根据两个连续解释变量绘制图表:散点图 296
- 4.2.2 使用分类解释变量绘图 309
- 4.3 多重比较图表 312
- 4.4 绘制多变量图表 315
- 4.4.1 pairs函数 315
- 4.4.2 coplot函数 316
- 4.4.3 相互作用图表 316
- 4.5 特殊图表 317
- 4.5.1 设计图 318
- 4.5.2 气泡图 318
- 4.5.3 有许多相同值的图表 319
- 4.6 将图形保存到外部文件 320
- 练习 322
- 备忘单 324
- 第5讲 R中的假设检验 325
- 5.1 统计假设简介 326
- 5.1.1 假设检验 327
- 5.1.2 决策错误 327
- 5.2 使用学生t检验 327
- 5.2.1 使用不相等方差的双样本t检验 328
- 5.2.2 使用相等方差的双样本t检验 328
- 5.2.3 单样本t检验 328
- 5.2.4 t检验中的公式语法和样本子集构建 329
- 5.3 u检验 333
- 5.3.1 双样本u检验 333
- 5.3.2 单样本u检验 334
- 5.3.3 u检验中的公式语法和样本子集构建 335
- 5.4 配对t检验和u检验 338
- 5.4.1 相关和协方差 340
- 5.4.2 协方差 342
- 5.4.3 相关检验中的显著性检验 343
- 5.4.4 公式语法 343
- 5.5 关联分析检验 346
- 5.6 拟合优度检验 348
- 练习 352
- 备忘单 354
- 模块4 使用R进行高级分析
- 第1讲 R中的线性回归 357
- 1.1 线性回归分析基础知识 358
- 1.1.1 简单线性回归 358
- 1.1.2 多重线性回归 359
- 1.1.3 ZUI小二乘估计 360
- 1.1.4 检查模型适当性 361
- 1.1.5 回归输出的解读 363
- 1.1.6 回归假设 364
- 1.1.7 多重共线性 365
- 1.1.8 检测多重共线性 365
- 1.2 使用线性回归进行工作 367
- 1.2.1 确定x和y变量 367
- 1.2.2 检查条件 368
- 1.2.3 回归线的计算 368
- 1.2.4 求取斜率 369
- 1.2.5 求取y截距 369
- 1.2.6 回归线的解读 369
- 1.2.7 做出正确的预测 371
- 1.3 R中的简单线性回归 371
- 1.3.1 R的5个著名函数 371
- 1.3.2 校正的平方和及乘积和 372
- 1.3.3 分散度 372
- 1.3.4 回归中的方差分析 373
- 1.3.5 AIC 373
- 1.3.6 参数不可靠性的估算 373
- 1.3.7 用拟合模型预测 374
- 1.3.8 检查模型 374
- 1.4 线性模型结果对象 375
- 1.4.1 系数 377
- 1.4.2 拟合值 377
- 1.4.3 残差 378
- 1.4.4 公式 378
- 1.4.5 ZUI佳拟合线 378
- 1.5 模型的构建 379
- 1.5.1 用前向逐步回归增加项 380
- 1.5.2 用后向删除方法删除项 382
- 1.5.3 模型的比较 383
- 1.6 曲线回归 384
- 练习 386
- 备忘单 389
- 第2讲 非线性回归 390
- 2.1 非线性回归分析简介 391
- 2.2 非线性回归和广义线性模型 391
- 2.3 逻辑回归 392
- 2.3.1 解读逻辑回归中的β系数 394
- 2.3.2 计算β系数 395
- 2.3.3 具有交互变量的逻辑回归 395
- 2.3.4 具有指示变量的逻辑回归 396
- 2.3.5 逻辑回归模型适当性检查 396
- 2.3.6 使用逻辑回归线进行预测 397
- 2.4 用MLE进行线估算 400
- 2.5 将非线性模型转化为线性模型 401
- 2.6 其他非线性回归模型 402
- 2.7 广义加性模型 406
- 2.8 自启动函数 407
- 2.8.1 自启动Michaelis-Menten模型 407
- 2.8.2 自启动渐近指数模型 408
- 2.8.3 轮廓似然 409
- 2.8.4 自启动逻辑 409
- 2.8.5 自启动四参数逻辑 409
- 2.8.6 自启动Weibull增长函数 410
- 2.8.7 自启动一阶房室函数 411
- 2.9 用拔靴法建立一个非线性回归家族 411
- 2.10 逻辑回归的应用 413
- 2.10.1 贷款接纳 414
- 2.10.2 德国信用数据 414
- 2.10.3 延误的航班 415
- 练习 416
- 备忘单 418
- 第3讲 聚类分析 419
- 3.1 聚类简介 421
- 3.1.1 聚类的应用 421
- 3.1.2 聚类的复杂性 422
- 3.1.3 距离计量 422
- 3.1.4 簇内和簇间平方和 423
- 3.1.5 高效聚类的属性 424
- 3.2 凝聚层次聚类 425
- 3.2.1 主要距离 426
- 3.2.2 密度估算方法 427
- 3.3 相似性聚合聚类 428
- 3.3.1 相似性聚合的原理 428
- 3.3.2 相似性聚合聚类的实施 428
- 3.4 R amap包的用法 429
- 3.5 k均值聚类 431
- 3.6 R聚类示例:欧洲人的蛋白质摄入 431
- 3.7 R聚类示例:美国月度失业率 434
- 3.8 在R中实施层次聚类 435
- 3.8.1 例1:重温欧洲人蛋白质摄入 435
- 3.8.2 例2:重温美国月度失业率 436
- 练习 437
- 备忘单 439
- 第4讲 决策树 440
- 4.1 决策树的应用 441
- 4.2 决策树原理 444
- 4.2.1 选择变量——创建树的第1步 444
- 4.2.2 拆分标准 445
- 4.2.3 为节点分配数据——创建树的第2步 447
- 4.2.4 修剪——创建树的第3步 447
- 4.3 构建决策树 448
- 4.3.1 决策树如何确定纯度? 449
- 4.3.2 使用决策树时的实际考虑因素 450
- 4.3.3 决策树选项 451
- 4.4 CART、C5.0和CHAID树 451
- 4.4.1 CART 452
- 4.4.2 C5.0 454
- 4.4.3 CHAID 455
- 4.4.4 决策树对比 456
- 4.5 用决策树预测 457
- 4.6 决策树的优缺点 458
- 4.6.1 决策树的优点 458
- 4.6.2 决策树的缺点 458
- 4.7 在R中构建决策树 459
- 练习 462
- 备忘单 464
- 第5讲 R和Hadoop的集成及Hive介绍 465
- 5.1 Hadoop 466
- 5.1.1 HDFS 467
- 5.1.2 MapReduce 468
- 5.1.3 Hadoop的应用 468
- 5.2 集成R和Hadoop——RHadoop 469
- 5.2.1 安装RHadoop 470
- 5.2.2 在R中使用RHadoop 472
- 5.3 通过文本挖掘得到有用信息 474
- 5.4 Hive简介 477
- 5.4.1 元存储 477
- 5.4.2 数据库 477
- 5.4.3 数据类型 477
- 5.4.4 查询语言 478
- 5.4.5 Hive命令 478
- 5.4.6 Hive交互和非交互模式 479
- 练习 480
- 备忘单 482
- 附录A 在R中可以完成的10件Microsoft Excel工作 484