3

想象一下,我在 Octave 中有一个单元格数组“列表列表”:

octave:6> a = {[1], [3,4], [5,6,7], [8,9,10,11]}
a =
{
  [1,1] =  1
  [1,2] =

     3   4

  [1,3] =

     5   6   7

  [1,4] =

      8    9   10   11

}

现在我想从每个嵌套行中提取给定元素,并且每个嵌套行的索引都在列表中给出。例如 [1, 2, 2, 3] 将意味着返回 [1, 4, 6, 10]。

执行此操作的最佳 Octave 方式是什么?我知道如何用循环来做到这一点,但这看起来很难看......

4

1 回答 1

2

看来我找到了对我有益的解决方案。我意识到这cellfun()需要一些参数,所以我可以轻松地执行元素映射。

octave:31> cellfun(@(x,y) x(y), a, {1,2,2,3})
ans =

    1    4    6   10
于 2012-10-14T10:51:28.407 回答