Nested For Loop to run through a single matrix at two different rate
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a nx23 matrix which I am looping through to get two separate variables X and Y (each of them being an nx1 column vector) but X and Y can never be the same column in the matrix. I'm using a nested For Loop since the looping has to happen at different rates, i.e. When X is the 1st column of the matrix, then the value of Y has to loop through the remaining 22 columns of the matrix (columns 2:23). Once Y has looped through all the columns, the value of X changes to the 2nd column of the matrix, and Y again loops through the remaining 22 columns. However, Y now has to start at column 1, skip column 2 (Y not equal to X), and continue through the rest of the columns. This continues until X equals the last column of the matrix.
The problem I have is that when Y=X and Y skips to the next column, the value of Y is repeated in the next loop. So when k=1, then the value of i = 2,2,3......23. When k=2, the value of i = 1,2,3,3,4......23, etc.
How do I prevent the repitition?
%I've only pasted the relevant section of code.
for k=1:23 % this is the loop to get X
X = Institution_data(1:784,k);
for i=1:23 % this is the loop to get Y
if (i==k) % X and Y cannot be the same value
i=i+1;
end
Y = Institution_data(1:784,i);
i % I've only put this here to track the value of i as the code runs
end
end
0 Commenti
Risposte (1)
Chirag Sarda
il 28 Giu 2023
You can use continue. To know how to use that you can refer this
0 Commenti
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!