【发布时间】:2015-03-11 10:18:18
【问题描述】:
我的问题很简单,但我似乎找不到解决方案。 我有一个 n 维数组 A,由于索引 C 的 n-1 维数组,我想提取 n-1 维数组 B。 如果没有循环,我怎么能做到?
例如:
A=array(1:12, dim=c(2,3,2))
A
, , 1
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
, , 2
[,1] [,2] [,3]
[1,] 7 9 11
[2,] 8 10 12
C=array(c(1,2,2,1,1,2),dim=c(2,3))
C
[,1] [,2] [,3]
[1,] 1 2 1
[2,] 2 1 2
最后我想找到 B(类似于“A[,,C]”)
B
[,1] [,2] [,3]
[1,] 1 9 5
[2,] 8 4 12
好像我已经完成了
B
[,1] [,2] [,3]
[1,] A[1,1,C[1,1]] A[1,2,C[1,2] A[1,3,C[1,3]]
[2,] A[2,1,C[2,1]] ...
我必须在 5 个维度上执行此操作,所以如果我可以避免制作循环...
谢谢。
【问题讨论】:
-
没人能帮我吗?
-
我不明白你是如何获得
B的。能详细点吗? -
当然,C 是第三维的索引数组。例如 B[1,1] = A[1,1, C[1,1]]
标签: arrays r multidimensional-array