我有一个关于索引三维数组的问题。
假设我有一个三维数组。
现在我想根据一个矩阵从这个数组中提取值,该矩阵保存了所有[i,j]位置的第3维索引。
所以结果应该是这样的:
有没有一种优雅的方法来做这件事?我知道如何使用两个for循环遍历数组,但对于我的数据来说这太慢了。
假设我有一个三维数组。
x<- c(1:36)
dim(x) <- c(3,4,3)
现在我想根据一个矩阵从这个数组中提取值,该矩阵保存了所有[i,j]位置的第3维索引。
y <- c(rep(1,4),rep(2,4),rep(3,4))
dim(y) <- c(3,4)
y
[,1] [,2] [,3] [,4]
[1,] 1 1 2 3
[2,] 1 2 2 3
[3,] 1 2 3 3
所以结果应该是这样的:
[,1] [,2] [,3] [,4]
[1,] 1 4 19 34
[2,] 2 17 20 35
[3,] 3 18 33 36
有没有一种优雅的方法来做这件事?我知道如何使用两个for循环遍历数组,但对于我的数据来说这太慢了。