例:
对于这个数组:
A = [1 2 2 2 3 3 ;
0.1 0.2 0.3 0.05 0.2 0.8]
我正在寻找这个答案:
对于第一个元素y(1) = 0.1
第2,第3,第4 y(2) = 0.55
第5和第6 y(3) = 1
怎么做?
答案 0 :(得分:3)
使用accumarray
。
A = [1 2 2 2 3 3 ;
0.1 0.2 0.3 0.05 0.2 0.8]
accumarray(A(1,:).',A(2,:).')
答案 1 :(得分:0)
function x = sum_elements(A,n)
[~,col]=find(ismember(A,n));
x = sum(A(2,col));
end
使用矩阵和元素n。
调用函数sum_elements(A,1) = 0.1000
sum_elements(A,2) = 0.5500
sum_elements(A,3) = 1