0

我只是想通过应用 A 并使用 B 作为索引来创建输出。例如,

A = [7;9]
B = [0;0;1;1;2]

output = [0;0;7;7;9]

因为

A的第0个被认为是0,

A的第一个是7,

A的第二个是9。

我尝试使用accumarray,但这个功能很难理解,我不知道如何应用它。

4

1 回答 1

2

“A的第0个被认为是0”

不,在 MatLab 中不是。索引始终为正整数。因此,您需要翻译A为 0 添加一列并B为正确的索引值增加一列。

A = [7;9];
B = [0;0;1;1;2];

A = [0;A];
A(B+1)

输出

ans =

   0
   0
   7
   7
   9
于 2013-11-01T05:42:44.157 回答