Clear Filters
Clear Filters

How to convert a cell array of cell arrays to matrix ?

18 views (last 30 days)
I need to convert a cell array of cell arrays to matrix. I tried to use cell2mat() , but I am getting an error message.
C={{1 3 4};{1 3 3}}
C =
{1x3 cell}
{1x3 cell}
cell2mat(C)
Error using cell2mat (line 53)
Cannot support cell arrays containing cell arrays or objects.

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 27 Jul 2015
Edited: Azzi Abdelmalek on 27 Jul 2015
C={{1 3 4};{1 3 3}}
out=cell2mat(cellfun(@(x) cell2mat(x),C,'un',0))
  3 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 27 Jul 2015
This has nothing to do with the fact that tour cell array is bigger. Your example is not representative of your data. Please give more details about your cells.
Azzi Abdelmalek
Azzi Abdelmalek on 27 Jul 2015
Maybe your cell array looks like
C={{1 3 4};{1 3 3};[1 2 3]}
The third element is not a cell array

Sign in to comment.

More Answers (1)

Abhinuv Pitale
Abhinuv Pitale on 12 Sep 2018
With different type of objects in the array, you cant use the lambda as suggested above!

Categories

Find more on Cell Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!