我只是不明白 accumarray 究竟是如何工作的。我检查了官方的matlab文档,但我仍然无法完全理解。
如果是这样的,在哪里:
subs = [1
3
4
3
4]
val = 101:105';
accumarray(subs,val) =
[101
0
206
208]
我知道它是 A(1)= 101、A(2)= 0、A(3)= 102+104 和 A(4)= 103+105
但如果是这样的:
subs = [1 1
2 2
3 2
1 1
2 2
4 1]
val = 101:106';
accumarray(subs,val) =
[205 0
0 207
0 203
106 0]
我不明白这个方法是如何工作的......我有点得到A(1)= 101 + 104,然后是A(2)= 102 + 105。
但为什么会显示在第二列?另外,为什么 [3 2] 行不包括在计算中?
我知道这是一个非常简单的问题,但这是我第一次使用 Matlab .. 对此的任何帮助将不胜感激,谢谢!