如何对第 1 列中相同值的第 2 列中的数据求和:
c = [11 1;
11 3;
12 5;
13 9;
13 11;
13 3]
预期结果是:
r = [11 4;
12 5;
13 23]
我知道如何使用循环来管理它,但是还有其他更简单的方法吗?在 Matlab 中,函数
accumarray
可以工作,但 Scilab 中有类似的东西吗?
在下面找到一个解决方案,可能不是最好的
[c,k]=gsort(c,'r','i');
i=find(c(1:$-1,1)<>c(2:$,1));
r=[];l=1;
for j=[i(1:$),size(c,1)]
r=[r;c(j,1),sum(c(l:j,2))];
l=j+1;
end