《R高性能编程 用整套解决方案与高超技巧突破性能瓶颈》PDF下载

  • 购买积分:8 如何计算积分?
  • 作  者:利姆,Tjhi著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2015
  • ISBN:9787121273964
  • 页数:144 页
图书介绍:本书对R语言做了简要描述,配以大量编程实践和代码样例,适合于想要提高R语言性能的程序员和开发者,对大量数据的处理、R语言的实际应用、基准测试均有指导意义。现代社会面对越来越庞大的数据和数据分析,R语言正是分析和处理大数据的有效方式,本书正是全面解析R语言的优秀书目。

1 理解R的性能:为什么R程序有时候很慢? 1

计算性能的三个限制因素:CPU、RAM和磁盘I/O 2

R是运行时解释的 4

R是单线程的 5

R需要将全部数据加载到内存 5

算法设计影响时间和空间复杂度 6

小结 9

2 性能分析:衡量代码的性能 11

衡量总运行时间 11

使用system.time()衡量运行时间 12

使用rbenchmark重复衡量运行时间 13

使用microbenchmark衡量运行时间的分布 15

分析运行时间 16

使用Rprof()分析函数的性能 16

性能分析的结果 18

分析内存使用情况 20

使用OS工具监控内存、CPU使用情况和磁盘I/O 22

瓶颈的发现及解决 23

小结 26

3 加快R运行的简单方法 27

向量化 27

使用内置函数 29

预分配内存 30

使用更简单的数据结构 33

使用哈希表进行大型数据上的频繁查找 34

去CRAN寻找更快的包 35

小结 36

4 使用编译代码加快运行速度 37

在运行之前编译R代码 37

编译函数 38

即时编译(JIT)R代码 41

在R中使用编译语言 41

前提条件 42

以内联形式包含编译代码 42

调用外部编译代码 46

使用编译代码的注意事项 49

小结 52

5 使用GPU让R运行得更快 53

GPU上的通用计算 53

R和GPU 54

安装gputools 55

使用gputools实现快速统计建模 55

小结 59

6 减少内存使用的简单方法 61

重用对象而不多占用内存 61

删除不再需要的中间数据 66

运行时计算值而不是永久性存储值 69

交换活跃数据和非活跃数据 71

小结 71

7 使用有限的内存处理大型数据集 73

使用节约内存的数据结构 73

更小的数据类型 76

稀疏矩阵 77

对称矩阵 78

比特向量 79

使用内存映射文件并以块的形式处理数据 80

bigmemory包 81

ff包 85

小结 89

8 使用并行计算加倍提升性能 91

数据并行性v.s.任务并行性 91

实现数据并行的算法 95

实现任务并行的算法 98

集群节点运行同一个任务时 98

集群节点运行多个不同任务时 100

计算机集群并行执行多个任务 102

共享内存并行性v.s.分布式内存并行性 104

优化并行的性能 108

小结 109

9 将数据处理交给数据库系统 111

将数据抽取到R v.s.在数据库中处理数据 111

在关系型数据库中使用SQL进行数据预处理 112

将R表达式转化为SQL 116

使用dplyr 117

使用PivotalR 119

在数据库中运行统计和机器学习算法 122

使用列式数据库提升性能 125

使用数据库阵列最大化科学计算的性能 128

小结 129

10 R和大数据 131

理解Hadoop 131

在Amazon Web Services上配置Hadoop 133

使用Hadoop批量处理大型数据集 136

将数据上传到HDFS 136

使用RHadoop分析HDFS数据 138

R中的其他Hadoop包 142

小结 143