How to count number of nonzero elements in part of cell arrays?

3 visualizaciones (últimos 30 días)
Hello,
I have a cell array C 1x5 cells with 1x3001 doubles
I want to count amount of elements bigger than zero in C{1,2}, C{1,3}, C{1,4} and C{1,5} (without C{1,1})
I can do:
numel(nonzeros(C{:,2})) + numel(nonzeros(C{:,3})) + .....
or in a loop:
for i = 2:5
Badumpsss = Badumpsss+numel(nonzeros(C{:,i}));
end
But maybe there are better way?

Respuesta aceptada

David Hill
David Hill el 16 de Jun. de 2020
sum(arrayfun(@(n)nnz(C{1,n}>0),2:5));
  3 comentarios
David Hill
David Hill el 16 de Jun. de 2020
sum(arrayfun(@(n)nnz(C{1,n}>=0),2:5));

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by