【发布时间】:2020-08-01 16:44:59
【问题描述】:
您好,很抱歉这个可能很愚蠢的问题。我过去学了一点 C++,但在过去的几年里,我只使用过 R。我需要为使用 Rcpp 编写的包转换一些 R 代码,特别是,我正在使用 RcppArmadillo。 现在我检查了文档,但我花了最后几个小时试图完成这项工作。假设我有一个矩阵 A 和一个索引向量 idx。如果我想提取一个只包含与 idx 中包含的索引对应的行的子矩阵,在 R 中我会这样做:
A[idx,]
在犰狳时我正在这样做:
A.rows(idx);
其中 A 是 mat 对象。但是,我收到以下错误:
not matching function for call to 'arma::Mat<double>::rows(arma::vec&)'
我究竟做错了什么?
提前感谢您的帮助!
【问题讨论】:
-
你试过
arma::uvec吗? -
我想我解决了,非常感谢!问题不在于命令行,而是将 idx 设置为
vec而不是uvec,对吧?
标签: r rcpp armadillo submatrix rcpparmadillo