How to make a cell array of cell arrays

9 ビュー (過去 30 日間)
Blue
Blue 2019 年 8 月 6 日
編集済み: madhan ravi 2019 年 8 月 6 日
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
  1 件のコメント
Blue
Blue 2019 年 8 月 6 日
Thank you Adam.

サインインしてコメントする。

その他の回答 (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 Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by