Cell containing double arrays to cell

4 visualizaciones (últimos 30 días)
MiauMiau
MiauMiau el 1 de Jul. de 2017
Comentada: MiauMiau el 1 de Jul. de 2017
Hi,
Having (for instance) a 1x3 cell which contains in each entry a double array of a different size. For instance:
cell(1) = 1x2 double cell(2) = 1x10 double cell(3) = 1x6 double
I want to convert any such cell (hence with somewhat generic code), to a cell with one row containing all the elements of the double arrays one after another (in this example it would be a 1x18 cell). How can I do that?

Respuesta aceptada

Walter Roberson
Walter Roberson el 1 de Jul. de 2017
cell2mat(TheCell)
  3 comentarios
Walter Roberson
Walter Roberson el 1 de Jul. de 2017
Well, technically you could use
temp = horzcat(TheCell);
L = length(temp);
result = cell(1,temp);
for K = 1 : L; result{K} = temp(L); end
That might be slightly faster than
num2cell(cell2mat(TheCell))
Your question is a bit ambiguous as to whether you want a single cell entry with a 1 x 18 double vector in it, or if you want a 1 x 18 cell vector each with one double.
MiauMiau
MiauMiau el 1 de Jul. de 2017
The later, and your code works fine!:) Thank you

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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