Using a For Loop with the variable set to a series defined matrix values?

Hi. I have a program where I'm trying to implement a range of values that the user can examine, between 1 and 64. I want to run the program and have it cumulatively plot the results at all predefined window sizes.
I keep trying something like this, using all kinds of different combinations of brackets (I'm new to programming and MATLAB):
for window = ([1:64], [30:31], [21:29], [etc])
windowval = window % Used to test the For loop in the practice/test program
end
Usually windowval ends up equaling 1, then 2, then 3, etc. I want it to equal 1:64, as in, [1 2 3 4 5 6 ... 64], then on the next iteration, [30:31], etc.
Any tips? When I use doc for, the closest thing to what I want is just for a defined set of index values, s = [3,5,8,10]...
EDIT: Also, I should say, I want the user to be able to easily be able to implement these ranges into the script directly (but manually).

 Respuesta aceptada

Thorsten
Thorsten el 21 de Mayo de 2015
Editada: Thorsten el 21 de Mayo de 2015
Have you tried this combination of brackets? ;-)
for window = {1:64, 30:31, 21:29}
windowval = cell2mat(window);
end

2 comentarios

Jan
Jan el 21 de Mayo de 2015
Editada: Jan el 21 de Mayo de 2015
Or faster:
windowval = window{1};
Alexander Ross
Alexander Ross el 21 de Mayo de 2015
Editada: Alexander Ross el 21 de Mayo de 2015
Thank you both, this worked very nicely! I feel like a fool for not being able to figure it out! Have a great day!

Iniciar sesión para comentar.

Más respuestas (1)

Jan
Jan el 21 de Mayo de 2015
Editada: Jan el 21 de Mayo de 2015
ini = [1, 30, 21];
fin = [64, 31, 29];
for iWindow = 1:numel(ini)
WindowVal = ini(iWindow):fin(iWindow);
end

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 21 de Mayo de 2015

Editada:

el 21 de Mayo de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by