how to convert cell array to a matrix?
Afficher commentaires plus anciens
I have a 5X4 matrix whose each element is a cell array. how to convert it to a simple matrix of elements.
5 commentaires
Bhowmik.U
le 30 Juil 2018
try if this works
X=cell{5,4} %your cell Y=cell2mat(X) % your desired matrix
Stephen23
le 30 Juil 2018
@Zara Khan: what size would you expect the output to be? Would padding be acceptable to you? If so, with what value?
KSSV
le 30 Juil 2018
Attach data instead of image snippet..have a look on Cell2mat
Zara Khan
le 30 Juil 2018
Zara Khan
le 31 Juil 2018
Réponses (1)
Jos (10584)
le 30 Juil 2018
A = {[1 2 3],[4 5],6 ; [11 12],13,[] ; 21, [22 23], [24 25]} % data
B = arrayfun(@(k) cat(2,A{k,:}),1:size(A,1),'un',0) % make row vectors
C = padcat(B{:}) % pad vectors with NaNs
My function PADCAT can be downloaded here: https://uk.mathworks.com/matlabcentral/fileexchange/22909-padcat-varargin
6 commentaires
Jos (10584)
le 31 Juil 2018
use d instead of A to create B ... I am no sure if I understand your problem though ...
Zara Khan
le 31 Juil 2018
Jos (10584)
le 31 Juil 2018
At some point you will have a cell array with values, won't you? Then you can transform it as above.
Zara Khan
le 31 Juil 2018
Jos (10584)
le 1 Août 2018
This is all rather vague ... Can you show us some code, showing where you get stuck?
Catégories
En savoir plus sur Resizing and Reshaping Matrices dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!