Rcpp R与C++的无缝整合PDF电子书下载
- 电子书积分:10 积分如何计算积分?
- 作 者:(法)德克·埃德比特尔(DirkEddelbuettel)著
- 出 版 社:西安:西安交通大学出版社
- 出版年份:2015
- ISBN:9787560581101
- 页数:250 页
第一部分 简介 1
第1章 Rcpp简介 3
1.1 背景:从R到C++ 3
1.2 示例一 7
1.2.1 问题设置 7
1.2.2 R解决方案之一 8
1.2.3 C++解决方案之一 9
1.2.4 使用inline扩展包 10
1.2.5 使用Rcpp attributes 12
1.2.6 R解决方案之二 13
1.2.7 C++解决方案之二 14
1.2.8 R解决方案之三 16
1.2.9 C++解决方案之三 16
1.3 示例二 17
1.3.1 问题设置 17
1.3.2 R解决方案 18
1.3.3 C++解决方案 19
1.3.4 比较 20
1.4 小结 20
第2章 工具与设置 21
2.1 整体设置 21
2.2 编译器 22
2.2.1 一般设置 22
2.2.2 平台相关的注意事项 23
2.3 R应用程序接口(API) 25
2.4 首次使用Rcpp进行编译 25
2.5 inline扩展包 27
2.5.1 概览 28
2.5.2 使用includes 31
2.5.3 使用plugin 32
2.5.4 制作plugin 33
2.6 Rcpp attributes 35
2.7 异常处理 36
第二部分 核心数据类型 41
第3章 数据结构:第一部分 43
3.1 RObject类 43
3.2 IntegerVector类 45
3.2.1 示例一:返回完美数 46
3.2.2 示例二:使用输入 47
3.2.3 示例三:使用错误的输入 48
3.3 NumbericVector类 50
3.3.1 示例一:使用两个输入 50
3.3.2 示例二:引入clone 50
3.3.3 示例三:矩阵 53
3.4 其他向量类 54
3.4.1 LogicalVector 54
3.4.2 CharacterVector 55
3.4.3 RawVector 55
第4章 数据结构:第二部分 56
4.1 Named类 56
4.2 List类,又名GenericVector类 58
4.2.1 从R中接受参数的List 58
4.2.2 使用List返回参数给R 59
4.3 DataFrame类 60
4.4 Function类 62
4.4.1 示例一:使用用户提供的函数 62
4.4.2 示例二:访问R函数 63
4.5 Environment类 63
4.6 S4类 64
4.7 ReferenceClasses 66
4.8 R数学库函数 67
第三部分 进阶话题 69
第5章 在扩展包中使用Rcpp 71
5.1 简介 71
5.2 使用Rcpp.package.skeleton 72
5.2.1 概述 72
5.2.2 R代码 74
5.2.3 C++代码 74
5.2.4 DESCRIPTION 76
5.2.5 Makevars和Makevars.win 76
5.2.6 NAMESPACE 78
5.2.7 帮助文件 78
5.3 案例学习:wordcloud扩展包 80
5.4 进一步的示例 82
第6章 扩展Rcpp 83
6.1 简介 83
6.2 扩展Rcpp::wrap 84
6.2.1 侵入式扩展 85
6.2.2 非侵入式扩展 85
6.2.3 模板与局部特化 86
6.3 扩展Rcpp::as 86
6.3.1 侵入式扩展 87
6.3.2 非侵入式扩展 87
6.3.3 模板与局部特化 87
6.4 案例学习:RcppBDT扩展包 89
6.5 进一步的示例 91
第7章 Modules 92
7.1 动机 92
7.1.1 使用Rcpp导出函数 92
7.1.2 使用Rcpp导出类 93
7.2 Rcpp Modules 96
7.2.1 使用Rcpp Modules导出C++函数 96
7.2.2 使用Rcpp Modules导出C++类 101
7.3 在其他扩展包中使用module 110
7.3.1 命名空间的导入导出 110
7.3.2 扩展包框架生成器对module的支持 112
7.3.3 module文档 112
7.4 案例学习:RcppCNPy扩展包 112
7.5 进一步的示例 115
第8章 Sugar 116
8.1 动机 116
8.2 运算符 118
8.2.1 二元算术运算符 118
8.2.2 二元逻辑运算符 119
8.2.3 一元运算符 120
8.3 函数 121
8.3.1 产生单一逻辑结果的函数 121
8.3.2 产生sugar表达式的函数 122
8.3.3 数学函数 128
8.3.4 d/q/p/r统计函数 129
8.4 性能 131
8.5 实现 132
8.5.1 CRTP模式 132
8.5.2 VectorBase类 133
8.5.3 实例:sapply 134
8.6 案例学习:使用Rcpp sugar计算π 139
第四部分 应用 143
第9章 RInside 145
9.1 动机 145
9.2 示例一:Hello, World! 146
9.3 示例二:数据传输 149
9.4 示例三:对R表达式求值 151
9.5 示例四:C++通过R作图 152
9.6 示例五:在MPI中使用RInside 153
9.7 其他示例 155
第10章 RcppArmadillo 157
10.1 概述 157
10.2 动机:FastLm 159
10.2.1 实现 159
10.2.2 性能比较 160
10.2.3 一个警告 163
10.3 案例学习:使用RcppArmadillo实现卡尔曼滤波 166
10.4 RcppArmadillo和Armadillo之间的区别 174
第11章 RcppGSL 176
11.1 简介 176
11.2 动机:FastLm 177
11.3 向量 179
11.3.1 GSL向量 180
11.3.2 RcppGSL::vector 181
11.3.3 对应 183
11.3.4 向量视图(vector view) 183
11.4 矩阵 185
11.4.1 生成矩阵 185
11.4.2 隐式转换 185
11.4.3 索引 185
11.4.4 方法 186
11.4.5 matrix view类 186
11.5 在自己的扩展包里使用RcppGSL 186
11.5.1 configure脚本 187
11.5.2 src文件夹 189
11.5.3 R文件夹 190
11.6 通过inline使用RcppGSL 190
11.7 案例:使用RcppGSL实现基于GSL的B-样条拟合 192
第12章 RcppEigen 202
12.1 简介 202
12.2 Eigen类 203
12.2.1 固定大小的向量和矩阵 203
12.2.2 动态大小的向量和矩阵 204
12.2.3 用于预制组件操作的数组 206
12.2.4 向量、矩阵和特殊矩阵的映射对象 206
12.3 案例学习:使用RcppEigen实现卡尔曼滤波 207
12.4 线性代数和矩阵分解 210
12.4.1 基本求解器 210
12.4.2 特征值和特征向量 211
12.4.3 最小二乘求解器 212
12.4.4 显秩分解 212
12.5 案例学习:RcppEigen中用于线性模型的C++工厂 214
附录A R程序员的C++入门 223
A.1 编译而不是解释 223
A.2 静态类型 225
A.3 一个更好的C 226
A.4 面向对象编程(但与S3或S4不同) 229
A.5 泛型编程和STL 230
A.6 模板编程 232
A.7 C++的进一步推荐读物 234
参考文献 235
主题索引 241
软件索引 247
作者索引 249
- 《中国电影院线系统整合研究》夏卫国著 2018
- 《视觉传达设计的要素分析与创意整合》刘洋著 2019
- 《香豆素整合药学研究》李明凯,罗晓星主编 2018
- 《感觉整合与儿童发展 理论与应用》罗钧令著 1998
- 《战略的悖论 拆解与整合=PARADOX OF STRATEGY DIFFERENTIOATION AND INTEGRATION》马浩著 2019
- 《国家级特色专业系列教材当代幼儿教师丛书 幼儿园环境设计的整合与创建》吕袁媛,华丽,王玉月著 2018
- 《基于实践经验整合的高等教育发展研究》(澳)史蒂芬·比利特著;欧阳忠明等译 2018
- 《动员与整合 传播学视野下的社会影响机制研究》费爱华著 2019
- 《教育技术基础 整合的方法和跨学科的视角》卢蓓蓉译;彭呈军责任编辑;(美)J.Michael 2019
- 《单元整合与测评·英语 九年级 上 人教版》《单元整合与测评》编写组编 2015
- 《羊脂球 莫泊桑短篇小说选》(法)莫泊桑著;张英伦译 2010
- 《海洋文明小史》倪谦谦责编;王存苗译;(法)雅克·阿塔利 2020
- 《包法利夫人》(法)福楼拜著;许渊冲译 2019
- 《梵蒂冈地窖》(法)安德烈·纪德著 2018
- 《公主小姐不想吃饭》(法)克里斯汀·诺曼·维拉蒙著(法)玛丽安娜·巴尔西隆绘苏迪译 2019
- 《世界名著阅读经典 欧也妮·葛朗台 高老头 全译本 12-16岁》(法)巴尔扎克著 2017
- 《爱》(法)玛格丽特·杜拉斯 2018
- 《钢琴独奏作品》(法)埃里克·萨蒂 2018
- 《鞋子》(法)安娜-贝内迪克特·施维贝尔编 2019
- 《我才是真的公主!》(法)克里斯汀·诺曼·维拉蒙,苏迪,(法)玛丽安娜·巴 2019