For loop goes longer than expected.
Afficher commentaires plus anciens
Dear all,
I want to extract a part of a colomn vector into another vector. I tried the following:
startSample = Fs*startTime; % Becomes 112800
stopSample = Fs*stopTime; % Becomes 152800
y5s_unfiltered = zeros(stopSample-startSample,1);
for i = startSample:stopSample
y5s_unfiltered(i,1) = y(i,1); % y is the source vector and y5s_unfiltered the destination vector
end
I would expect the for loop to go 40000 times with i in the beginning is 112800 and in the end it is 152800. But unfornately the vector y5s_unfiltered becomes a 112800x1 double vector.So it grows beyond it expected 40000x1 size.
Can you help me what is the cause for this behaviour?
Réponse acceptée
Plus de réponses (1)
Alan Stevens
le 29 Mai 2020
Try
for i = 1:(stopSample-startSample+1)
y5s_unfiltered(i,1) = y(i,1); % y is the source vector and y5s_unfiltered the destination vector
end
1 commentaire
Hendrik2k1
le 29 Mai 2020
Catégories
En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!