MATLAB Answers

Sum up values depending on entries in another column

4 views (last 30 days)
buhmatlab
buhmatlab on 7 Apr 2020
Edited: madhan ravi on 7 Apr 2020
Hi,
With the friendly helpf of this forum I was able to count specific values but now there is a last hurdle:
I've got a column vector 300x1 witch contains strings, say:
vector1 = [A;A;B;A;B;B;C;A;C]
and another vector with values, say:
vector2 = [5;2;0;1;4;2;1;3;1]
Now I want to sum up the values in vector 2 for each (same) string, which should look like:
vector3 = [5;7;0;8;4;6;1;11;2]
NOTE: Later on I would like to add more crterions than only the string name.
How can I achieve this?
Thank you in advance!

  0 Comments

Sign in to comment.

Accepted Answer

David Hill
David Hill on 7 Apr 2020
vector1=['AABABBCAC']';
vector2=[5 2 0 1 4 2 1 3 1]';
vector3=zeros(size(vector2));
a=unique(vector1);
for k=1:length(a)
vector3(ismember(vector1,a(k)))=cumsum(vector2(ismember(vector1,a(k))));
end

More Answers (0)


Translated by