rearranging matrices horizontally rather than vertically

13 visualizaciones (últimos 30 días)
AA
AA el 2 de Mayo de 2015
Respondida: pfb el 2 de Mayo de 2015
I want to reshape this matrix but the following command does the rearrangement not properly.
b=(rand(30,1)).'
c = reshape(b,[3,10])
i want to rearrange in the following manner
b= 4 1 3 5 7 1 2 3 5 6 ...... 2 3 4
c= 4 1 3 5 7 1 2 3 5 6 (10 columns)
My command rearranges c as 4 5 2 ....
how can i change this?

Respuesta aceptada

pfb
pfb el 2 de Mayo de 2015
This is because the index order in a matrix is along columns. I'm not sure your command does what you say. Anyway
b= [4 1 3 5 7 1 2 3 5 6 1 2 ];
c = reshape(b,[3,4]);
gives
c =
4 5 2 6
1 7 3 1
3 1 5 2
while
c = reshape(b,[4,3])'
gives
c =
4 1 3 5
7 1 2 3
5 6 1 2
Probably the random numbers are only for the sake of example. If this is not the case, why don't you simply write
b = rand(3,10);
?

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices 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