How do I change cell array to matrix?

1 view (last 30 days)
This question has been asked several times but none of the answers have helped me so far.
I have a cell array, C, that is 5 x 6 with each cell being 1 x 1.
How do I get a resulting 5 x 6 matrix with all indices being treated as numbers? I have used cell2mat(C) but that just results in the error 'Dimensions of matrices being concatenated are not consistent.' Shouldn't this work since each cell is 1 x 1?
  3 Comments
Star Strider
Star Strider on 10 May 2018
‘Shouldn't this work since each cell is 1 x 1?’
No.
Consider:
C = {{rand(2)}, {rand(3)}}
C =
1×2 cell array
{1×1 cell} {1×1 cell}
K
K on 10 May 2018
The actual cell array is much larger. But I attached it..

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 10 May 2018
The numbers are stored as character arrays, the reason the dimensions did not match.
Simply convert them to a numeric array:
N = str2double(A1)

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products


Release

R2016b

Community Treasure Hunt

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

Start Hunting!