这可能是相当基本的,但我还没有找到一个简单的解决方案。
假设我有一个三维矩阵:
m <- array(seq_len(18),dim=c(3,3,2))
我想用索引数组对矩阵进行子集化:
idxrows <- c(1,2,3)
idxcols <- c(1,1,2)
获取位置上的数组(1,1)
,(2,1)
and (3,2)
, 那是:
[,1] [,2] [,3]
[1,] 1 5 9
[2,] 10 14 18
我努力了m[idxrows,idxcols,]
但没有任何运气。
有没有办法做到这一点(显然不使用 for 循环)?