How to convert cell array to matrix

19 views (last 30 days)
I have a cell array of size 1x16,how can I convert it to a matrix? I tried cell2mat but is always showing an error that size not consistent.Pls help asap

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 25 Apr 2012
%A - data cell array
A = arrayfun(@(x)randi(10,randi(5,1,2)),1:6,'un',0);
%solution
[m,n] = cellfun(@size,A)
% horzcat
mm = max(m);
outhorz = cell2mat(arrayfun(@(x,y,z)[x{:};nan(mm - y,z)],A,m,n,'un',0))
% vertcat
nn = max(n);
outvert = cell2mat(arrayfun(@(x,y,z)[x{:},nan(y,nn - z)],A,m,n,'un',0)')

More Answers (0)

Categories

Find more on Data Types 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!