使用向量作为索引从数组中获取元素

时间:2015-04-14 19:46:45

标签: arrays r

给定K_matrix矩阵

> K=4;
> K_matrix = array(runif(K*K) , dim = rep(2,K), dimnames = NULL)
> K_matrix

, , 1, 1

          [,1]      [,2]
[1,] 0.3919999 0.2033387
[2,] 0.7053074 0.6531753

, , 2, 1

          [,1]      [,2]
[1,] 0.9474465 0.6097955
[2,] 0.7115899 0.8040770

, , 1, 2

           [,1]      [,2]
[1,] 0.01687723 0.6536963
[2,] 0.91289535 0.5464496

, , 2, 2

          [,1]      [,2]
[1,] 0.3858341 0.7031602
[2,] 0.7991189 0.1577894

如果我执行,

> K_matrix[2,1,1,1]
[1] 0.7053074

我得到了第二个"元件。但是,如果我尝试通过使用包含第二个元素坐标的向量(vec)获得相同的结果,我得到这样的结果:

> vec = c(2,1,1,1)
> K_matrix[vec]
[1] 0.7053074 0.3919999 0.3919999 0.3919999

,这不是预期的结果。我怎样才能解决这个问题?

0 个答案:

没有答案