How to convert cell array to matrix

15 visualizzazioni (ultimi 30 giorni)
Bashir
Bashir il 25 Apr 2012
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

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 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)')

Più risposte (0)

Categorie

Scopri di più su Data Types in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by