how to convert cell array to a matrix?

I have a 5X4 matrix whose each element is a cell array. how to convert it to a simple matrix of elements.

5 Commenti

try if this works
X=cell{5,4} %your cell Y=cell2mat(X) % your desired matrix
@Zara Khan: what size would you expect the output to be? Would padding be acceptable to you? If so, with what value?
Attach data instead of image snippet..have a look on Cell2mat
I want to access this matrix as row by row
Bhowmik U: No its not working as we cant use cell for cell arrays.

Accedi per commentare.

Risposte (1)

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

6 Commenti

Zara Khan
Zara Khan il 31 Lug 2018
Modificato: Zara Khan il 31 Lug 2018
its nice. But how to use this codes when I dont have some predefined values. Like I have a code:
d{i,j}=diff(A{i,j});
Now I want to make this d as simple matrix instead of cell arrays. How I will use your above codes in this case?
use d instead of A to create B ... I am no sure if I understand your problem though ...
How this will be when I am retrieving data from a loop ? If I use d instead of A then still I am using some predefined values.
At some point you will have a cell array with values, won't you? Then you can transform it as above.
yes that can be done using the above code. But what about when I am storing values from loops?
This is all rather vague ... Can you show us some code, showing where you get stuck?

Accedi per commentare.

Categorie

Scopri di più su Convert Image Type in Centro assistenza e File Exchange

Richiesto:

il 30 Lug 2018

Commentato:

il 1 Ago 2018

Community Treasure Hunt

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

Start Hunting!

Translated by