# Double for loop is not working properly

2 views (last 30 days)
Sebastian Engelsgaard on 27 Jan 2021
Hi,
I have a 1x12 cell called 'ch' which contains a repeatable pattern as shown in the code below. I assume that the first row of cells in 'ch' repeats twice, however, the 7th column in ch is not using data{1,2}...
Anyone can help?
for n=1:6:12
for k=1:2
ch{1,n}= data{1,k}(:,14);
ch{1,n+1}= 1500
ch{1,n+2}= 'id'
ch{1,n+3}='name'
ch{1,n+4}='tag'
ch{1,n+5}='unit'
end
end
Bob Thompson on 27 Jan 2021
What you have posted worked fine for me. The ch{1,7} did capture data{1,2}.

Daniel Pollard on 27 Jan 2021
k will take the values [1 2]. For the first iteration of k, it stores data{1,1}(:,14) in ch{1,n}. The second time around, it will store data{1,2}(:,14) in ch{1,n}, overwriting what was previously done. The data associated with k=1 is never stored.
Bob Thompson on 27 Jan 2021
I think you can actually just combine it down to one loop
for k=1:2
ch{1,(k-1)*6+1}= data{1,k}(:,14);
ch{1,(k-1)*6+2}= 1500
ch{1,(k-1)*6+3}= 'id'
ch{1,(k-1)*6+4}='name'
ch{1,(k-1)*6+5}='tag'
ch{1,k*6}='unit'
end
Sebastian Engelsgaard on 28 Jan 2021
Edited: Sebastian Engelsgaard on 28 Jan 2021
Thx. It works.

### Categories

Find more on Programming in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!