如何 select RcppParallel 中 RMatrix 的一行或一列

How to select a row or column of RMatrix in RcppParallel

我需要和 RcppParallel::RMatrix 一起工作。以前我只使用 Rcpp。但是现在 RcppParallel 我需要一个像 Rcpp 那样的文档。

例如

Rcpp::NumericMatrix 我们可以 select 带有占位符“_”的行或列,如下所示:

NumericMatrix new = OldMatrix(_,1);

但我想知道如何为 RcppParallel::RMatrix 做同样的事情?

感谢您的帮助。

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()