《数据科学与工程技术丛书 数据科学R语言实践 面向计算推理与问题求解的案例研究法》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(美)德博拉·诺兰著;于戈译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2017
  • ISBN:9787111571117
  • 页数:431 页
图书介绍:本书带领读者身临其境地体验数据科学领域的日常工作,书中的12章即为12个鲜活的实践案例,包括航班延误数据分析、股票配对交易仿真以及二十一点纸牌游戏策略开发等,涵盖统计学、数据库、机器学习和可视化技术等众多知识点。本书的重点是计算推理和问题求解的思维过程,而不涉及具体编程语言的语法细节。本书适合作为统计计算、数据挖掘等相关课程的补充案例教材,也适合该领域的技术人员阅读参考。

第一部分 数据操作和建模 2

第1章 基于室内定位系统的位置预测 2

1.1引言 2

1.2原始数据 3

1.3数据清洗和建立用于分析的数据表示 10

1.3.1对于方向数据的探索 12

1.3.2对于MAC地址数据的探索 13

1.3.3对于手持设备位置数据的探索 15

1.3.4数据准备函数的创建 17

1.4信号强度的分析 17

1.4.1信号强度的分布 18

1.4.2信号与距离之间的关系 22

1.5预测位置的最近邻方法 26

1.5.1测试数据的准备 26

1.5.2方向的选择 27

1.5.3发现最近邻 29

1.5.4交叉验证和k的选择 31

1.6练习题 34

参考文献 36

第2章 樱花公路赛参赛选手比赛时间建模 37

2.1引言 37

2.2将比赛结果表读入R中 39

2.3数据清洗和变量格式化 46

2.4探索所有男选手的跑步时间 53

2.4.1根据大量观察绘制散点图 53

2.4.2对平均成绩构建拟合模型 56

2.4.3横截面数据和协变量 63

2.5为跨年度的个人参赛选手构造记录 66

2.6对个人跑步时间的变化进行建模 74

2.7从网上抓取比赛结果 78

2.8练习题 84

参考文献 86

第3章 应用统计学方法识别垃圾邮件 87

3.1引言 87

3.2邮件消息解析 88

3.3读取邮件消息 91

3.4文本挖掘和朴素贝叶斯分类 94

3.5在邮件消息中找到单词 96

3.5.1将消息划分成消息头部与消息正文 96

3.5.2从消息正文中移除附件 97

3.5.3从消息正文中抽取单词 103

3.5.4完成数据准备过程 105

3.6实现朴素贝叶斯分类器 106

3.6.1测试数据与训练数据 107

3.6.2训练数据的概率估计 108

3.6.3分类新消息 110

3.6.4计算方面的考虑 114

3.7递归划分与分类树 115

3.8将电子邮件消息组织成R语言数据结构 117

3.8.1处理邮件头部 118

3.8.2处理附件 121

3.8.3在更多的邮件数据上测试代码 123

3.8.4完成处理过程 124

3.9从邮件消息中获取变量 126

3.10探索邮件特征集合 133

3.11使用rpart()模型拟合邮件数据 135

3.12练习题 139

参考文献 142

第4章 处理机器人和传感器日志文件:寻找圆形目标 143

4.1描述 143

4.2数据 144

4.2.1读取一个完整的日志文件 146

4.2.2探索日志文件 150

4.2.3可视化路径 154

4.2.4探索“观察” 157

4.2.5范围值的误差分布 160

4.3探测圆形目标 162

4.3.1连接机器人背后的片段 166

4.3.2确定一个片段是否对应于一个圆形 168

4.4实时流数据情况下探测目标 180

参考文献 182

第5章 针对12GB数据集的分析策略:航班延误案例 183

5.1引言 183

5.2获取航班数据集 184

5.3处理海量数据集:计算航班延误数 184

5.3.1 R程序设计环境 185

5.3.2 UNIX shell方法 186

5.3.3支持R的SQL数据库 188

5.3.4 R的bigmemory程序包 191

5.4使用并行计算进行数据探索:航班延误的分布 194

5.4.1使用foreach编写可并行化的循环 194

5.4.2使用“划分-应用-合并”方法获得更好的性能 196

5.4.3使用“划分-应用-合并”方法发现航班飞行的最佳时间 196

5.5从探索分析到建模:旧飞机会带来较大的延误吗 200

参考文献 201

第二部分 仿真研究 204

第6章 股票的配对交易 204

6.1问题提出 204

6.2数据格式 208

6.3金融数据的读取 209

6.4时间序列的可视化 211

6.5查找开仓点和平仓点 213

6.5.1识别仓位 213

6.5.2显示仓位 215

6.5.3查找所有开/平仓 216

6.5.4计算一个仓位的收益 218

6.5.5找到k的最优值 220

6.6仿真研究 223

6.6.1股票价格序列仿真 225

6.6.2提升stockSim()函数的运行速度 233

参考文献 235

第7章 分支过程的仿真研究 236

7.1引言 236

7.2随机过程探索 239

7.3产生后代 241

7.3.1检查结果 244

7.3.2考虑其他的实现方式 245

7.4性能分析与代码改进 245

7.5从一个作业的后代到全部的后代 247

7.6单元测试 248

7.7函数返回值的结构 249

7.8家族树:分支过程仿真 250

7.9仿真复制 254

7.10练习题 260

参考文献 261

第8章 具有相变过程的自组织动态系统 262

8.1引言与动机 262

8.2模型 263

8.3实现BML模型 265

8.3.1创建初始网格结构 266

8.3.2测试网格创建函数 269

8.3.3显示网格 273

8.3.4可视化网格 273

8.3.5简单方便的面向对象程序设计 276

8.3.6移动汽车 278

8.4评估代码性能 284

8.5用C实现BML模型 295

8.5.1用C编写算法 297

8.5.2编译、加载和调用C代码 303

8.6运行仿真 307

8.7实验性编译 311

参考文献 312

第9章 模拟二十一点纸牌游戏 313

9.1引言 313

9.2二十一点游戏基础 314

9.3玩一手二十一点游戏 317

9.4游戏策略 321

9.5玩多手二十一点游戏 326

9.6一个更加精确的发牌器 329

9.7算牌 333

9.8合而为一 335

9.9练习题 337

参考文献 338

第三部分 数据和Web技术 340

第10章 棒球:探索关系数据库中的数据 340

10.1引言 340

10.2 Sean Lahman数据库 341

10.3汇总球员工资得到球队工资总额 343

10.4合并工资总额数据与其他表中的信息 348

10.4.1在工资总额数据中增加球队名称 348

10.4.2在工资总额数据中增加世界大赛记录 351

10.5探索极端工资 352

10.6练习题 354

参考文献 355

第11章CIA世界概况的混搭应用 357

11.1引言 357

11.2采集数据 359

11.3从不同数据源集成数据 360

11.4准备绘图数据 361

11.5使用Google Earth绘图 366

11.6从CIA的XML文件中抽取人口统计信息 370

11.7直接生成KML 376

11.8附加的计算任务 381

11.8.1创建绘图标识 381

11.8.2从字符串生成 KML文件的效率 381

11.8.3从HTML文件中抽取纬度和经度 383

11.9练习题 383

参考文献 386

第12章 利用Web抓取和文本挖掘探索数据科学职位招聘信息 388

12.1引言与动机 388

12.2探索不同的Web网站 390

12.3初步/探索性抓取:Kaggle网站的职位招聘列表 395

12.3.1处理文本 399

12.3.2泛化到其他招聘启事中 400

12.3.3抓取Kaggle招聘启事列表 403

12.4抓取CyberCoders.com 404

12.4.1从一条招聘启事中提取技能列表 407

12.4.2在搜索结果中发现指向招聘启事的链接 411

12.4.3查找招聘启事搜索结果的下一页 416

12.4.4将这些函数集成在一起 417

12.5对任意网站可重用的通用框架 418

12.6抓取Career Builder网站 421

12.7抓取Monster.com网站 422

12.8分析结果:重要的技能 424

12.9 Web抓取注意事项 430

12.10练习题 431

参考文献 431