Filter löschen
Filter löschen

Convert 385*360 cell array containing 1*33 vector into 1*360 Matrix containing 385*33 double

5 Ansichten (letzte 30 Tage)
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

Akzeptierte Antwort

Voss
Voss am 22 Dez. 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

Weitere Antworten (0)

Kategorien

Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by