Create for loop to simplify code and output arrays
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Esme Stanford-Durkin
am 28 Apr. 2020
Beantwortet: Esme Stanford-Durkin
am 28 Apr. 2020
I have this code:
len1 = a(4);
st1 = 5; % starting index for first channel
y1 = a(st1: st1+len1-1);
len2 = a(st1+len1);
st2 = st1+len1+1; % starting index for second channel
y2 = a(st2: st2+len2-1);
len3 = a(st2+len2);
st3 = st2+len2+1; % starting index for third channel
y3 = a(st3: st3+len3-1);
len4 = a(st3+len3);
st4 = st3+len3+1;% starting index for fourth channel
y4 = a(st4: st4+len4-1);
This is taking data from a text file and outputting different values for y (i.e y2 = 1524x1 double).
I know there's a simpler for loop I can do but I can't seem to get it right! Can you help?
0 Kommentare
Akzeptierte Antwort
Weitere Antworten (2)
Saurav Roy
am 28 Apr. 2020
Hey !
I think this is somwhat close to what you are looking for,
num = length(a);
len = a(4);st = 5;
y = a(st: st+num-1);
for i = 2 : num
len(i) = a(st(i-1) + len(i-1));
st(i) = st(i-1) + len(i-1) + 1;
y(i) = a(st(i):st(i)+len(i)-1);
end
4 Kommentare
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!