Converting the 3D Matrix to 2D Matrix

2 visualizaciones (últimos 30 días)
Marimuthu Ananthavelu
Marimuthu Ananthavelu el 16 de Abr. de 2018
Comentada: Marimuthu Ananthavelu el 18 de Abr. de 2018
I have a matrix outputs from my function in the following form;
zeros(3,5,5)
Basically, its a result of pairwise comparison of a matrix
(5 x 5)
for
3
different modalities (types).
I wish to convert this matrix with each pairwise comparison matrix separately with respect to different modalities.i.e I wish to have the result as below;
1 2 3
i1 j1 k1
i2 j2 k2
i3 . .
i4 . .
i5 . .
i6 . .
. . .
. . .
. . .
. . .
i25 j25 k25
I checked the example using Reshape and could not get much from it. Can anyone please help me through? Thanks
  2 comentarios
Birdman
Birdman el 16 de Abr. de 2018
What have you tried?
Jan
Jan el 16 de Abr. de 2018
I do not understand, what "i1, j1, k1" means. Where are they found in the original data? The problem can be solved by:
y = reshape(permute(reshape(x, Size1), Order2), Size3)
All you need is to find the matching parameters Size1, Order2 and Size3.

Iniciar sesión para comentar.

Respuesta aceptada

Jan
Jan el 16 de Abr. de 2018
Editada: Jan el 16 de Abr. de 2018

The general reordering of elements can be done by:

y = reshape(permute(reshape(x, Size1), Order2), Size3)

In your case (perhaps - still not sure what "i1, j1, k1 etc" means):

x = zeros(3,5,5);
x(:) = 1:3*5*5;   % Some test data
y = reshape(permute(reshape(x, 3, 25), [2, 1]), [25, 3])

If this is the wanted output, there is an abbreviation:

y = reshape(x, 3, 25).'

permute(Matrix, [2,1]) is the same as mtranspose() and the 2nd reshape is not required here. But it is worth to keep the general transformation in mind.

  1 comentario
Marimuthu Ananthavelu
Marimuthu Ananthavelu el 18 de Abr. de 2018
Hi please note that the i,j,k are nothing but the elements of the matrix. And I just mentioned them for the sake of clarity. Thanks for your answer.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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