For loop not working
1 回表示 (過去 30 日間)
古いコメントを表示
I am looping over one year in minutes. However the script stops looping values at T=49716 for some reason. Then element j=1248 in matrix B
B has one column saying which minute of the year that the value in the second column appears (13377x2 double)
How can I make it loop for the entire year?
for T=1:525600
if T~=B(j,1)
A(T)=0;
elseif T==B(j,1)
A(T)=B(j,2);
j=j+1;
end
end
0 件のコメント
採用された回答
Jan
2021 年 3 月 12 日
The loop does run over all T. Why do you think, that the loop stops?
A = zeros(1, 525600); % Pre-allocation, faster and simpler code
j = 1; % Assumption
for T = 1:525600
if T == B(j, 1)
A(T) = B(j, 2);
j = j + 1;
end
end
Equivalent code without a loop:
A = zeros(1, 525600);
A(B(:, 1)) = B(:, 2):
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!