Rcpp: 开发指南
目录
警告
本文最后更新于 2020-04-20,文中内容可能已过时。
R 是一门统计编程语言,提供了丰富的统计分析方法,并允许用户安装第三方软件库,可以快速地构建从想法到实践的全过程。但是 R 毕竟是一门解释性语言,天然具有一定的性能瓶颈。Rcpp 正是为了解决性能问题,实现了用户使用更高性能的编译语言 c++ 优化运行速度。
安装 Rcpp
开发
使用 cppFunction
使用 sourceRcpp
注意
Reference v.s. Copy
在 Rcpp
中,当我们把一个向量【赋值】给另外一个向量时,如果是使用 =
(如 v2=v1
),则 v2
变成了 v1
的引用(reference
),是 v1
的一个别名(alias
)。也就是说,两者实际上依然指向同一个指针位置,从而修改 v2
会产生副作用:v1
也会跟着变化。
如果先完全复制一个向量,需要使用 clone
函数,此时两者就变成独立的变量了。
|
|
性能优化
参考链接
- Rcpp FAQ:Dirk Eddelbuettel 亲自编写的关于
Rcpp
问题小结,短小精悍,非常值得一读。 - Rcpp for everyone:可以说是非常通俗易懂的一个网上电子书,并且还提供实例。对于
c++
基础相对薄弱的同学,Rcpp
的入门比较高,因此可以先对照着这本书上面的案例,从编写简单的 demo 开始逐步掌握。
相关内容
- Rcpp Basics
- dd: 测试磁盘IO读写速度
- R:colorout 设置终端输出的主题颜色
- feather:在R与python之间共享数据存储格式
- Windows: 安装与配置 Sublime Text 3
支付宝
微信