如何在RcppParallel中选择RMatrix的行或列

时间:2017-09-06 22:45:11

标签: r rcpp rcppparallel

我需要与RcppParallel::RMatrix合作。以前我只与Rcpp合作过。但现在对于RcppParallel,我需要一个类似于Rcpp的文档。

例如

Rcpp::NumericMatrix我们可以选择包含占位符" _"的行或列。像这样:

NumericMatrix new = OldMatrix(_,1);

但我想知道RcppParallel::RMatrix怎么办?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

RcppParallel专注于迭代器,它提供RMatrix::ColumnRMatrix::Row类,它们为各个列和行提供迭代器:

Rcpp::NumericMatrix foo = ...;
RcppParallel::RMatrix<double> bar(foo);

RcppParallel::RMatrix<double>::Column column = bar.column(0);
// use any algorithm on column.begin() to column.end()

RcppParallel::RMatrix<double>::Row row = bar.row(0);
// use any algorithm on row.begin() to row.end()