2014-09-30 152 views
1

我想在C++中执行多项逻辑回归[使用glm()]并执行一些图[gplot()]。从C++调用R函数

我不能在C++中为这种回归编写函数,但也许可以打开R并调用glm()函数以便在C++中执行它,是吗?怎么样?我会很感激任何想法。

在此先感谢!

+0

[从C++调用R函数](http://gallery.rcpp.org/articles/r-function-from-c++/) – hrbrmstr 2014-09-30 13:53:02

+1

或者,[RInside](http://dirk.eddelbuettel.com/代码/ rinside.html)。 – Roland 2014-09-30 13:55:25

回答

5

是的,你可以通过RInside项目,它提供了一个(非常简单)类R实例化R解释器。然后,您可以将命令作为(可能是多行)字符串传递并通过REPL进行评估。

包装本身和不同的博客文章中有很多例子。由于它广泛使用了Rcpp,因此它在Rcpp book的一章中也有介绍。

+0

非常感谢!我在很多网站上发现了很多信息,我认为Rcpp是一款非常棒的工具,它绝对是我寻找的东西:) – EuGENE 2014-10-01 08:56:32

+0

我现在遇到的问题并没有让我用Rcpp取得进展,在使用'apt-get install r-cran-rcpp'或'install.packages(“Rcpp”)'安装Rcpp后,我的g ++编译器没有找到Rcpp.h头文件。我不能在'/ usr/include /'目录下安装R包,有什么想法吗?谢谢!!! – EuGENE 2014-10-01 08:59:10

+1

查看'examples/standard /'中的'Makefile'以便更好地理解RInside。您需要反映R构建过程和目录布局。你当然可以手工制作你的Makefile,但是要确保你使用了所有的正确的组件。我们的例子有用,所以也许可以按照他们的第一步? – 2014-10-01 10:29:44