Newbie question - converting a vector into a cellarray of vectors
Mostrar comentarios más antiguos
I have a vector X and want a cell array C containing N copies of that vector. How do I do that?
Here is how I am doing it now:
X = 1:5; N = 3;
C = mat2cell( repmat( X, N, 1 ), ones( N, 1 ), size( X, 2 ) );
This just feels like something that should be a primitive - converting back & frth betweenmatrices and cellarrays in different ways.
Respuesta aceptada
Más respuestas (1)
Jan
el 8 de Jul. de 2011
More efficient, because shared data copies are created:
C = cell(N, 1);
C(:) = {X};
2 comentarios
Oleg Komarov
el 8 de Jul. de 2011
C(1:N) = deal({X}); Same behaviour?
Jan
el 8 de Jul. de 2011
@Oleg: Same behaviour and equivalent speed.
Categorías
Más información sobre Structures en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!