MATLAB Answers

0

How to convert unconsistan cell array into 3d matrix?

Asked by Shakir Hussain on 7 Dec 2018
Latest activity Edited by Shakir Hussain on 7 Dec 2018
I have cell array of daily temperature data of 18 years including leap year i.e 18*1 and each cell consist on 720*360*366/365 (normal year 365 and leap year 366).
I have found examples example 1 to cell array conversion in to matrix but these exmaples did not define unconsistance length of cells (different length).
I tried below codes but did not workd for me. Thank you in advacne for any help
test = cell2mat(cellfun(@transpose,data,'UniformOutput',0));
and
test = cell2mat(permute(cellfun(@cell2mat,data,'uni',0),[720,360,18]));

  1 Comment

just give a short example

Sign in to comment.

Products


Release

R2018a

1 Answer

Answer by madhan ravi
on 7 Dec 2018
 Accepted Answer

reshape([data{:}],730,360,[])

  3 Comments

Direct reshape, permute, cell2mat is not working fo unconsistan dimension of mtrix
(error Dimensions of matrices being concatenated are not consistent.)
please attach your cell as .mat file to test
I done it by dealing indiviual cell separately by simple cell2mat

Sign in to comment.