Cell array: select cells based on length

3 visualizaciones (últimos 30 días)
Riccardo Rossi
Riccardo Rossi el 15 de En. de 2019
Comentada: Riccardo Rossi el 15 de En. de 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!

Respuesta aceptada

KSSV
KSSV el 15 de En. de 2019
Editada: KSSV el 15 de En. de 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

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by