Cell array: select cells based on length

3 Ansichten (letzte 30 Tage)
Riccardo Rossi
Riccardo Rossi am 15 Jan. 2019
Kommentiert: Riccardo Rossi am 15 Jan. 2019
Hi everyone,
If i have a cell array like this:
{1×3 double} {1×3 double} {2×3 double} {1×3 double} {4×3 double}
how can i extract only the 1x3 double cells (of which I do not know the exact location into cell array)?
Thank's a lot!

Akzeptierte Antwort

KSSV
KSSV am 15 Jan. 2019
Bearbeitet: KSSV am 15 Jan. 2019
C = cell(5,1) ;
C{1} = rand(1,3) ;
C{2} = rand(1,3) ;
C{3} = rand(4,3) ;
C{4} = rand(1,3) ;
C{5} = rand(4,3) ;
row = cellfun(@(x) size(x,1),C);
iwant = C(row>1)
Or you can use a loop:
C = cell(5,1) ;
C{1} = rand(1,3) ;
C{2} = rand(1,3) ;
C{3} = rand(4,3) ;
C{4} = rand(1,3) ;
C{5} = rand(4,3) ;
for i = 1:length(C)
if size(C{i},1)>1
C{i}
end
end

Weitere Antworten (0)

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by