Erron in reshaping a matrix

Good morning\evening
I had an error when i reshape a matrix
when i try to reshape this matrix from (6*5) into (1*30)
C =
0 0 0 0 0 0
0 0 0 1 1 1
0 0 1 1 1 1
0 0 1 1 1 1
0 0 1 1 1 1
the result was ans =
Columns 1 through 16
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
Columns 17 through 30
1 1 1 1 0 1 1 1 1 0 1 1 1 1
As you can see that the original matrix has sex zeros form the first row then followed by three zeros from the second row then three ones
But the reshaped marix has 12 zereos insted of 9 zeros
it also has other error if you see that the origenal matrix have 2 zeros in the third raw , but after reshaping it return 1 zero. The same error happen for row 4.

 Respuesta aceptada

Titus Edelhofer
Titus Edelhofer el 9 de Oct. de 2011

0 votos

Hi,
the matrix is indexed columnwise. If you want to have it rowwise indexed you need to transpose:
reshape(C', 1, 30)
Titus

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 9 de Oct. de 2011

Community Treasure Hunt

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

Start Hunting!

Translated by