0
我想通過傳遞參數列表來調用使用Rcpp和R函數定義的C++函數,類似於使用R中的do.call。一個愚蠢的例子:Rcpp使用參數列表調用R函數
假設我有一個向量,我想計算一個修剪的均值。兩種可能的方法是
x = rnorm(100)
mean(x, trim = 0.1)
do.call("mean", list(x = x, trim = 0.1))
在我的特定情況下使用do.call是可取的,因爲它可能是幾個參數以供功能使用的列表被調用。
基於在計算器發現了一些實施例中,我試圖執行在C以上++如下:
#include <Rcpp.h>
using namespace Rcpp;
// [[Rcpp::export]]
double foo(Function f, List args)
{
double out = as<double>(f(args));
return out;
}
如果ARGS是一個列表上面的代碼不工作,但只有當是值的矢量。
任何幫助,將不勝感激。
LS