Select only the matrices within the cell
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Alberto Acri
am 13 Jan. 2023
Beantwortet: Jan
am 13 Jan. 2023
Hi. A simple method to select only the matrices within the cell?
I am trying to do something like this with this code but it doesn't save the matrices as the for loop progresses:

cell_new = {};
for ii = 1:8
matrix = cell{1, ii};
if isempty(matrix)
matrix_ex = cell{1, ii + 2};
else
matrix_ex = matrix;
end
end
cell_new = [cell_new; {matrix_ex}];
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 13 Jan. 2023
Why not try it this way:
cell_new = {}; % Empty cell.
for k = 1: numel(originalCell)
matrix = originalCell{k};
if ~isempty(matrix)
cell_new = [cell_new; {matrix_ex}];
end
end
0 Kommentare
Weitere Antworten (2)
the cyclist
am 13 Jan. 2023
Does this do what you want?
% Make up some input data, with one cell remaining empty
A = cell(3,1);
A{1} = rand(2,5);
A{3} = rand(7,11);
% Find the empty cells
indexToEmpty = cellfun(@isempty,A);
% Get only the non-empty cells;
B = A(~indexToEmpty)
0 Kommentare
Jan
am 13 Jan. 2023
C = {rand(2), [], rand(3), [], [], rand(4)};
newC = C(~cellfun('isempty', C))
0 Kommentare
Siehe auch
Kategorien
Mehr zu Multidimensional Arrays finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!