标签: r
我有一些天真的问题要问:
1)当我想在R中调用C时,我必须编写一些C代码。但有时我必须自己调用一个用R编写的函数,我可以在C函数中调用该函数吗?
2)如果1)是可行的,那么如果我在循环中重复使用一个写入R的函数1000次,那么通过使用C来调用这个函数来进行循环会加速吗?
答案 0 :(得分:5)
提出问题。快速拍摄:
是的,你可以。对于R提供的基于C的API来说,它(可能很多东西)可能有点乏味 - 但是(至少在我们看来)我们通过Rcpp }放置的C ++层更容易p>
这是关键点。如果R代码是瓶颈,当你从C或C ++中调用它时,它仍然是瓶颈,因为从调用它无关紧要。重要的是它的相对速度。
rcpp-devel列表(链接在Rcpp page上)有很多相关的讨论;你也可以在[rcpp]标签下找到很多。
[rcpp]