How to make a cell array of cell arrays

19 visualizaciones (últimos 30 días)
Blue
Blue el 6 de Ag. de 2019
Editada: madhan ravi el 6 de Ag. de 2019
Hi,
How does one make a cell array of cell array in Matlab ? Let's A = (1:70), how can I transform this into a 14x1 cell array for which every cell contains 5 numbers ?
Thank you
  1 comentario
Adam Danz
Adam Danz el 6 de Ag. de 2019
Ha! You got 2 answers at almost the same time with almost the same variable names and the same explanation of terminology.

Iniciar sesión para comentar.

Respuesta aceptada

Adam Danz
Adam Danz el 6 de Ag. de 2019
Editada: Adam Danz el 6 de Ag. de 2019
"how can I transform this into a 14x1 cell array for which every cell contains 5 numbers"
What you're describing is a cell array of vectors, not a cell array of cells.
c = mat2cell(reshape(A,5,14),5,ones(1,14)); % For column vectors
or
c = mat2cell(reshape(A,5,14)',ones(1,14),5); % For row vectors

Más respuestas (2)

the cyclist
the cyclist el 6 de Ag. de 2019
Here is one way:
A = 1:70;
C = cell(14,1);
for ii = 1:14
C{ii} = A(5*ii-4:5*ii);
end
To be clear on terminology (and what you actually want) ... this will be a cell array of numeric vectors, not a cell array of cell arrays.

madhan ravi
madhan ravi el 6 de Ag. de 2019
Editada: madhan ravi el 6 de Ag. de 2019
Wanted = num2cell(reshape(A,5,[]),1).'

Categorías

Más información sobre Logical 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