Adding Number using for loop

Hi,
I have 2 columns in data, time and s. I want to add all values of S when time = 1. Similarly, I want to repeat this for all values of time. I know this is a simple task, but i am not getting any output . Please help.

 Risposta accettata

Hi,
When time = 1 you can sum all values of S in writing :
sum(S(time==1))
So you can do for all time values
Results = zeros(numel(unique(time)),2)
j=0;
for i = unique(time)'
j=j+1;
Results(j,:) = [i sum(Y(time==i))] % [new_time new_S]
end
Regards,

Più risposte (1)

KSSV
KSSV il 6 Ago 2020
Let A be your n*2 array.
t = A(:,1) ;
s = A(:,2) ;
[C,ia,ib] = unique(t) ;
N = length(C) ;
iwant = zeros(N,1) ;
for i = 1:N
iwant(i) = sum(s(ib==i)) ;
end
iwant

2 Commenti

Thanks, it was helpful.
I can accept only one answer, all of the solutions were really helpful and correct for me.
Regards

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by