How do I change cell array to matrix?

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 个评论

@K: please upload your cell array in a .mat file, by clicking the paperclip button.
‘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}
The actual cell array is much larger. But I attached it..

请先登录,再进行评论。

 采纳的回答

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

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

产品

版本

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by