Reshaping Multiple Matrices

12 visualizzazioni (ultimi 30 giorni)
robin mooney
robin mooney il 3 Feb 2011
Hi,
I am trying to reshape 1081 column vectors (size 49x1 each) using a for loop.
I know the loop needs to go from i=1 to i=1081. And the reshape command should look something like this;
T1= reshape(T1,7,7)
However I cannot seem to figure the correct loop for this.
The column vectors are named T0, T1, T3, .... , T1079, T1080.
Can anyone help me with this?
Many thanks
robin ----- Dublin Institute of Technology

Risposte (2)

Sean de Wolski
Sean de Wolski il 3 Feb 2011
  2 Commenti
robin mooney
robin mooney il 3 Feb 2011
thanks Sean. This info was indeed helpful!
However I am having trouble applying a formula to reshape the matrices within the loop. I tried T(i)=reshape(T(i),7,7) within the loop but it is not working. I'm a little fresh to matlab so excuse my ignorance if i am doing something simple wrong!
thanks
robin
the cyclist
the cyclist il 3 Feb 2011
For the index, use curly bracket T{i} rather than parentheses.

Accedi per commentare.


the cyclist
the cyclist il 3 Feb 2011
Also, if you can concatenate all your original vectors into one large array, then you can do the reshape in one fell swoop:
>> T = rand(1081,49); % Size of all your vectors, concatenated
>> Tr = reshape(T,[7,7,1081]); % Each slice in 3rd dim is one of your 7x7
  1 Commento
robin mooney
robin mooney il 7 Feb 2011
thanks cyclist! I will try this out!!

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by