MATLAB: How to add values in a vector based on repeating values on another

arrayindexingmatrixsumvector

Hi
I have two vectors of the same length and . I want it to be so that everytime a value in the first array repeats(for example the 2 in 1 and 9) the values in the second array would add up(so 7.8953..+8.5184).

Best Answer

accumarray(first_vector, second_vector)
This requires that first_vector is positive integers. The size of the result will be max(first_vector) x 1