MATLAB: Sum some values of a column based on an other column

sum column based on an other column

hi guys! i have two columns and i want to sum the second columns based on values of the first column. for example, the two columns are:
3 0.287000000000000
3 0.303000000000000
3 0.309000000000000
3 0.287000000000000
2 0.732000000000000
1 0.3380000000
the matrix is 8784*2. so, i want to sum the second column in the three different cases: when the first column is 1,sum all the values corresponding to 1, when 2 and 3 i want to do the same. how can i do? someone can help me?

Best Answer

% A is the matrix sized: 8784*2
idx1 = A(:,1)==1;
idx2 = A(:,1)==2;
idx3 = A(:,1)==3;
data = A(:,2);
sum(data(idx1)) % sum of values in the second column correspond to 1
sum(data(idx2)) % sum of values in the second column correspond to 2
sum(data(idx3)) % sum of values in the second column correspond to 3