我可以通过以下方式选择矩阵的所有行和矩阵范围内的列:
library(Rcpp)
cppFunction('
NumericMatrix subset(NumericMatrix x){
return x(_, Range(0, 1));
}
')
然而,我希望根据 NumericVector y
来选择列,例如,y
可能是类似于 c(0, 1, 0, 0, 1)
的内容。我尝试了以下代码:
library(Rcpp)
cppFunction('
NumericMatrix subset(NumericMatrix x, NumericVector y){
return x(_, y);
}
')
但它无法编译。我该怎么做?
y
并不是以0
或1
编码的。我只是多次选择列0
和列1
。本质上,我想要用替换方式获取这些列。 - Euler_Salterfind()
并直接使用y
)。 - coatlessmatrix_subset_idx(x, c(1,3))
这样的内容。 - Dirk Eddelbuettel