我正在写一个Rcpp模块,并希望返回RcppResultSet列表的一个元素列表,其元素是向量。例如,.Call("myfunc")$foo
应该是这样的:如何在Rcpp中创建一个向量列表?
[[1]]
[1] 1
[[2]]
[1] 1 1
[[3]]
[1] 1 1 1
(具体的数字是这里并不重要)。问题是我不知道这样做的正确Rcpp方式。我尝试传递一个vector<vector<int> >
,但是通过静默地将第一个向量的长度作为宽度(即使矩阵是粗糙的!)来构造矩阵。我试过构建一个RcppList
,但很难安全地将各种物体(如RcppVector
)铸造成SEXP
s。
任何人都有处理复杂结构(如Rcpp中的向量列表)的最佳实践的提示?
酷,谢谢!如果你坚持新的'Rcpp :: ...'类,一切都会有效! – 2010-06-21 22:58:12
的确很酷。我仍然需要编写新的类'Rcpp :: Date'和'Rcpp :: Datetime' ---但是你绝对可以在没有旧的'RcppParams','RcppResultSet','RcppVector'等的情况下生活。免费提供新的单元测试或示例,或添加到文档中。然后在'rcpp-devel'上见到你:) – 2010-06-22 00:04:48
你让我的生活更轻松。尽管我学习Rcpp已经过去了几天,但我无法想象回到R&C的组合。 – 2012-10-13 18:30:26