How to count the number of zero subcells in a cell?

1 view (last 30 days)
I have a cell array 12*32. each element of my cell contains 32 data. for example C{11,32}='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ' . I want to count how many of zero array like above is there in my cell. could any one help me? thanks
  3 Comments
Fateme Jalali
Fateme Jalali on 18 Jan 2016
t1 and t2 are my database.In this code I want to count howmany '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0' happens in diffrcell

Sign in to comment.

Answers (2)

Thorsten
Thorsten on 18 Jan 2016
Edited: Thorsten on 18 Jan 2016
If you have a cell array of matrices:
C{1,1} = ones(1,32);
C{1,2} = 2*ones(1,32);
C{2,1} = zeros(1,32);
C{2,2} = zeros(1,32);
N = nnz(cellfun(@(x) nnz(x)==0, C));
If you have a cell array of cells, an additional cell2mat is needed:
C = {{rand(5,1)}, {rand(7,1)}, {zeros(6,1)}, {rand(7,1)}, {0 1 2 3}, {-1 1}};
N = nnz(cellfun(@(x) nnz(cell2mat(x))==0, C));

Walter Roberson
Walter Roberson on 18 Jan 2016
Most of the code can be replaced.
tt2u = unique(tt2{1}, 'rows');
tt3u = unique(tt3{1}, 'rows');
number_of_similar_chunks = sum( ismember(tt2u, tt3u) );
However you should clarify how you want the counting to occur if there are duplicate entries in one of the array that match the other array.

Tags

Community Treasure Hunt

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

Start Hunting!