我的矩阵样本如下:
[ 1 43;
1 15;
1 34;
5 15;
5 32;
7 2;
7 43;
7 16;
7 75 ]
我想要第1列中每个唯一值的总和。因此,它将是:
[ 1 92;
5 47;
7 136 ]
有可能使用for
- 循环,但这会非常耗时。所以我正在寻找更快的解决方案。
答案 0 :(得分:4)
您可以使用以下代码:
[C,~,ic] = unique(A(:,1));
result = [C, accumarray(ic,A(:,2))];
另外,您可以在标准文档中找到unique和accumarray。