How to make a cell array of cell arrays

17 次查看(过去 30 天)
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 个评论
Adam Danz
Adam Danz 2019-8-6
Ha! You got 2 answers at almost the same time with almost the same variable names and the same explanation of terminology.

请先登录,再进行评论。

采纳的回答

Adam Danz
Adam Danz 2019-8-6
编辑:Adam Danz 2019-8-6
"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

更多回答(2 个)

the cyclist
the cyclist 2019-8-6
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 2019-8-6
编辑:madhan ravi 2019-8-6
Wanted = num2cell(reshape(A,5,[]),1).'

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by