问题标签 [rcpp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
333 浏览

r - 在 Windows 7 x64 上构建 RInside 示例的多定义错误

我正在尝试使用 RTools 中的 g++ 从 Windows 7 x64 上的 RInside\examples\standard 目录构建 rinside_sample1.cpp,方法如下:

链接导致多重定义错误:

然而 rinside_sample0.cpp 的类似构建过程成功。有人知道解决方案吗?

rinside_sample1.cpp 的问题似乎是由于 Rcpp::NumericMatrix 和 Rcpp::NumericVector 的使用而出现的。

rinside_sample0.cpp 代码:

rinside_sample1.cpp 代码:

0 投票
1 回答
92 浏览

rcpp - 满足条件时终止犰狳程序

我想知道如果满足某个条件,我如何终止一些犰狳程序。

我使用 RcppArmadillo 运行程序。但是,该程序有时可能会在数值上不稳定并产生 NaN 输出。如果某些变量采用 NaN,我想做的是终止程序。Armadillo 文档没有列出任何关于“终止”、“停止”或“中止”程序的内容。

谢谢。

0 投票
1 回答
1365 浏览

r - Mac 10.8 上的 Rcpp 安装失败

Rcpp 无法为我安装。当我在 R 控制台(Mac 10.8 上的 R 2.15.1)中运行以下命令时:

install.packages("Rcpp")

我收到以下错误:

我究竟做错了什么?

0 投票
1 回答
1825 浏览

r - rcpp编译错误

我正在尝试运行测试功能,但出现编译错误:

compileCode(f, code, language = language, verbose = verbose) 中的错误:编译错误,未创建函数/方法!另外:警告信息:运行命令'C:/PROGRA~1/R/R-215~1.1/bin/x64/R CMD SHLIB filede44a566900.cpp 2> filede44a566900.cpp.err.txt'状态为1

我会很感激你的帮助。我正在使用 Windows 7、R2.15.1、64 位

0 投票
1 回答
1037 浏览

c++ - 使用英特尔编译器套件编译 OpenMPI 应用程序

我在 linux 上有最新的 OpenMPI,它是用 Intel 编译器套件编译的。我正在尝试编译 OpenMPI 应用程序。我的特定应用程序使用 RInside 和 RcppEigen。如果我注释掉代码的 openMPI 部分,则编译字符串为:

因此,我尝试使用 mpic++ 进行编译:

mpic++ -I/usr/share/R/include -I/usr/lib/R/site-library/Rcpp/include -I/usr/local/lib/R/site-library/RInside/include -O3 -pipe - g -Wall -I/usr/local/lib/R/site-library/RcppEigen/include sjb_simple_smle_with_Rinside.cpp -L/usr/lib/R/lib -lR -lblas -llapack -L/usr/lib/R/site -library/Rcpp/lib -lRcpp -Wl,-rpath,/usr/lib/R/site-library/Rcpp/lib -L/usr/local/lib/R/site-library/RInside/lib -lRInside -Wl ,-rpath,/usr/local/lib/R/site-library/RInside/lib -o sjb_simple_smle_with_Rinside

如果我取消注释

并尝试编译,我得到以下错误。使用英特尔编译器编译 OpenMPI 应用程序有什么技巧吗?完整的源代码如下:

完整的源代码:

0 投票
1 回答
181 浏览

r - 如何确保 R / Rcpp 代码可重现(“可分发”)?

我已经为一篇论文写了一些 R 代码,依赖于一些外部包(例如plyrand )并使用andreshape编写了几个相对简单的内联 C++ 函数。inlineRcppArmadillo

为了研究可重复性的目的,我想确保它可以在我自己的计算机(Win64)以外的计算机上“按原样”执行。

我的问题:假设我包含了用于安装所需软件包的代码,RcppArmadillo(和Rcppinline)软件包是否足以编译用 编写的函数RcppArmadillo,或者最终用户是否需要更改系统路径以在他的 Windows 机器上进行编译?如果没有,是否有可能/建议从我端保存已编译的函数并包含在我要运送的 R 代码中?

此外,在不太可能的情况下,代码应该在一段时间后(比如几年)运行,是否足以在当前版本中包含完整的 R 安装和相关软件包以使代码“面向未来” ?

我希望这个问题很清楚。

0 投票
1 回答
2272 浏览

r - 使用 Rcpp 从 C++ 调用 R 函数

我正在自学 Rcpp 并注意到 Rcpp 糖没有示例功能。所以我决定从 C++ 调用基础库中的示例函数。我有两个问题:

1.关于参数prob的类型,我应该使用NumericVector吗?使用矢量类型是否合法?

2. 关于输出的类型,我应该使用 IntegerVector 吗?使用 NumericVector 类型是否合法?

似乎所有这些类型都很好(参见下面的代码),但我想知道哪种类型更好用。

0 投票
2 回答
180 浏览

macos - Rcpp:Mac 显示加载轮并且几乎冻结

我创建了一个依赖于 Rcpp 的 R 包。这个包中的一个函数应该在每 n 次迭代时显示打印语句。所以我希望每隔几秒钟在 R 控制台上看到一个新行。

奇怪的是,当我在 R GUI 中运行我的函数时,光标变成了一个加载轮,R“几乎”冻结了。计算完成后加载轮消失一次。

这种情况的最小示例总结如下:

我还发现,如果代码在终端上运行,新行会按我的预期每 20 秒出现一次。但我更喜欢在 R GUI 上运行它。

如果有人能告诉我为什么会这样,我将不胜感激。

我正在使用 Mac。

0 投票
1 回答
262 浏览

r - 使用 RInside 析构函数

一个简单的实验表明,每个线程一次只允许一个 RInside 实例。

程序崩溃,输出如下:

然而,另一个连续创建 RInside 实例的实验的结果还不是很清楚。

该程序在创建 R2 的那一刻嗡嗡作响。之前的输出如下所示:

R1 析构函数调用是否不足以进行正确的 RInside 清理?

0 投票
3 回答
1523 浏览

c++ - 在 Windows 中使用 rinside 和 qt

我开始在 C++ 中使用 rinside 和 rcpp。我只想从零开始,所以我的 QT 项目除了创建一个 RInside 实例之外什么都没有,我有一个我无法解决的问题。我在项目中只有一个对话框。

我的项目文件:

主文件:

对于其他文件,那里什么都没有,因为它只是一个空表单。当我构建它时,我遇到了很多错误,如下所示:

我正在使用 R-2.15.1、RInside 0.2.7、Rcpp 0.9.10、QT 4.8.0、MinGW 4.6.1。