Creating a Matrix with for loop

2 visualizaciones (últimos 30 días)
Diego Yanez
Diego Yanez el 16 de En. de 2013
I have a fairly large vector named blender (45,000+). I have extracted n elements for which blender is greater than b (irrelevant). Now my difficulty is the following:
I am trying to create a 21 x n matrix with each extracted element of blender plus 10 things before, and the 10 things after, hence the reason why each column is 21.
I have been trying variations of the following:
element=find(blender >= 120);
NewMatrix = zeros(21, length(element));
for i = 1:length(element)
k = element(i);
NewMatrix(:,i)= Matrix(blender(k-10:k+10));
end
then I want to plot one column of the matrix at the time when I hit Enter. This second part I can figure out later, but I would appreciate some help making the Matrix
Thanks

Respuesta aceptada

Cedric
Cedric el 16 de En. de 2013
Editada: Cedric el 16 de En. de 2013
If I understand well and if you want to keep it simple with an explicit for loop, what you want to do is something like that I guess:
element=find(blender >= 120);
NewMatrix = zeros(21, length(element));
for ii = 1:length(element)
k = element(ii);
r = max(1, k-10) : min(length(blender), k+10) ; % Range of indices +/- 10
% limited to valid ids.
NewMatrix(1:length(r),ii) = blender(r); % Store blender on the
% valid range; next
% elements left to 0.
end
Cheers,
Cedric
  4 comentarios
Diego Yanez
Diego Yanez el 17 de En. de 2013
Any chance you can help with the second part of my question. I want to plot one column of NewMatrix at the time, cycling through the next column when I hit Enter. This is as far as I got:
for j=1:length(element)
figure(1)
plot(NewMatrix(:,j),'bo--')
grid on
keyboard
end
This stops at the first column, but does not keep cycling
Cedric
Cedric el 17 de En. de 2013
Yes, replace
keyboard
with
input( 'Press a key to continue..' )

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Statistics and Machine Learning Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by