How do I convert a cell array whose dimensions are not equal?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a cell array that looks like this:
mydata =
[10x11 double] [5x11 double]
Name Size Bytes Class Attributes
mydata 1x2 1544 cell
I'm trying to convert this to a numeric array using the cell2mat function. But I keep getting the following error message:
Error using cat Dimensions of matrices being concatenated are not consistent.
Error in cell2mat (line 76) m{n} = cat(2,c{n,:})
Is it possible to convert a cell array whose dimensions are not equal?
0 commentaires
Réponse acceptée
Geoff Hayes
le 10 Juin 2014
Check out the documentation for cell2mat at http://www.mathworks.com/help/matlab/ref/cell2mat.html and in particular the example. In your case, the matrices have a different number of rows so cannot be concatenated in this way. But, if your cell array mydata was a column (rather than a row) with the same two elements, then yes it could be concatenated because each matrix has the same number of columns
mydata = cell(2,1);
mydata{1} = zeros(10,11);
mydata{2} = ones(5,11);
mtx = cell2mat(mydata);
3 commentaires
Manoj
le 10 Fév 2016
It is showing an error
Error using cat Dimensions of matrices being concatenated are not consistent.
regards
Manoj Kumar Nellore
Geoff Hayes
le 10 Fév 2016
Manoj - what is showing an error? Presumably you are continuing this conversation at http://www.mathworks.com/matlabcentral/answers/267443-how-do-i-convert-a-cell-array-whose-dimensions-are-not-equal.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrices and Arrays dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!