Is there a method to extract all the data from a nested cell array when each nested cell is of a different size?

3 ビュー (過去 30 日間)
For example
1x1 cell
1x2 cell
1x19 cell
1x20 cell
This will produce a ragged array but is there a work around
  1 件のコメント
Walter Roberson
Walter Roberson 2015 年 6 月 12 日
What would you want the output to look like?
Are all the elements either cell or numeric?

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

採用された回答

Konstantinos Sofos
Konstantinos Sofos 2015 年 6 月 12 日
Hi George,
My first thought would be to apply a recursive function using the cellfun . e.g.
function C =extractmycells(C)
if iscell(C)
C = cellfun(@extractmycells, C, 'UniformOutput', 0);
C = cat(2,C{:});
else
C = {C};
end
end
As an example
>> B = {1,{2},{3,4,5},{6,7,8,9}}
B =
[1] {1x1 cell} {1x3 cell} {1x4 cell}
>> C =extractmycells(B)
C =
[1] [2] [3] [4] [5] [6] [7] [8] [9]
Regards,

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCell Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by