Finding total count of values in a cell array?

3 vues (au cours des 30 derniers jours)
Jason
Jason le 13 Août 2011
I have a 4-D cell array, and there are empty arrays '[]' within it. How do I find the total number of the empty arrays?
This is what I tried.
% A is 4-D cell array
cnt = 0;
for a = 1:1:(size(A, 1))
for b = 1:1:(size(A, 2))
for c = 1:1:(size(A, 3))
for d = 1:1:(size(A, 4))
if A(a, b, c, d) == []
then cnt = cnt + 1;
end
end
end
end
end
Error: Undefined function or method 'eq' for input arguments of type 'cell'.
Someone please help me? Thanks.
  4 commentaires
Fangjun Jiang
Fangjun Jiang le 13 Août 2011
First, to reference the content of a cell array, you need to use {}, not ()
To check if the content is empty, use isempty(), not to use ==[]
Jason
Jason le 13 Août 2011
Yes, I made a mistake, it should be A{a, b, c, d} - curly brackets, secondly, I learnt something new - the use of isempty. Thanks again.

Connectez-vous pour commenter.

Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 13 Août 2011
cnt=cellfun('isempty',A);
cnt=sum(cnt(:));

Plus de réponses (0)

Catégories

En savoir plus sur Cell Arrays dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by