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 中查找有关 Matrix Indexing 的更多信息

产品

版本

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by