Elegant way of "sending to the next row" in a matrix
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Matt
el 10 de Sept. de 2015
Hello,
I have a 1x36 matrix that I want to cut in bits. In my specific case I want to obtain a 6x6 matrix from this 1x36 matrix. Every 6 column of the original 1x36 matrix I want to go to a next row.
How can I do this in an elegant way?
Thanks!
0 comentarios
Respuesta aceptada
Anthony Poulin
el 10 de Sept. de 2015
I have not the same result and using a transpose I think that I get what you want.
A=1:10;
B=reshape(A, [5,2])'
So, B =
1 2 3 4 5
6 7 8 9 10
Más respuestas (1)
Anthony Poulin
el 10 de Sept. de 2015
Hello,
Do you try to use the "reshape" function?
2 comentarios
Hamoon
el 10 de Sept. de 2015
Editada: Hamoon
el 10 de Sept. de 2015
B=reshape(A,[5,2])
means B will be a (5*2) matrix, you're doing something wrong Matt, just clear your workspace variables and try again. as Anthony said you'll get the result you want using:
A=1:10;
B=reshape(A,[5,2]);
C=B';
C is what you want, and B is a (5*2) matrix
B =
1 6
2 7
3 8
4 9
5 10
C =
1 2 3 4 5
6 7 8 9 10
Ver también
Categorías
Más información sobre Resizing and Reshaping Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!