How do you convert an array into a square matrix?
14 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Say I have an array
x=[1 2 3 4 5 6 7 8 9 10]
and I want to convert this into a square matrix as follows:
M=
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10...
And so on so that there are a total of 10 rows and 10 columns
So I start with a [1x10]array and turn this into a [10x10] matrix
How do you do this??
Thank you!
MC
1 comentario
Matt J
el 29 de Sept. de 2012
It's often possible to avoid replicating data (and also desirable for memory-efficiency reasons) using the BSXFUN command. You should elaborate on why you think you need the rows replicated.
Respuesta aceptada
Wayne King
el 29 de Sept. de 2012
Editada: Wayne King
el 29 de Sept. de 2012
x = [1 2 3 4 5 6 7 8 9 10];
x = repmat(x,10,1);
0 comentarios
Más respuestas (2)
Andrei Bobrov
el 30 de Sept. de 2012
M = ones(numel(x),1)*x;
M = bsxfun(@plus,x,zeros(numel(x),1));
0 comentarios
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!