Convert 385*360 cell array containing 1*33 vector into 1*360 Matrix containing 385*33 double
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi all,
I am trying to convert 385*360 cell array, with each cell containing a 1*33 vector of double values, into a 1*360 cell array containing 385*33 double values. Here is the Code (+ Annotations) that I have so far but it doesn't seem to work the way I want it to.
Any help would be appreciated, thanks!!
for i = 1:385
for j = 1:360
x = Node_all{i,j} % Node_all is the Matrix size 385*360 containing 1*33 double each
Node_complete(i,:) = x % This is the Information from each collumn summed up in 1 Matrix (385 *33)
All_Nodes_complete{j,1} = Node_complete % Now trying to put the 385*33 Matrix back into a cell (1*360)
end
end
0 commentaires
Réponse acceptée
Voss
le 22 Déc 2021
Here is one way to do it:
n = size(Node_all,2);
All_Nodes_complete = cell(1,n);
for j = 1:n
All_Nodes_complete{j} = vertcat(Node_all{:,j});
end
Or another way (more like the way you were trying):
[m,n] = size(Node_all);
for j = 1:n
for i = 1:m
% x = Node_all{i,j}; % Node_all is the Matrix size 385*360 containing 1*33 double each
% Node_complete(i,:) = x; % This is the Information from each collumn summed up in 1 Matrix (385 *33)
Node_complete(i,:) = Node_all{i,j};
end
All_Nodes_complete{1,j} = Node_complete; % Now trying to put the 385*33 Matrix back into a cell (1*360)
end
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Data Type Conversion dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!