Clear Filters
Clear Filters

how to count number of zeros in each row and column?

3 views (last 30 days)
how can count the number of zeros in each row and in each column like this
A = [ 1 1 0 1 0 1
0 0 1 0 1 0
1 1 0 0 0 1
0 0 1 0 1 0]
B = [ 2
4
3
4 ]
C = [ 2 2 2 3 2 2 ]

Answers (1)

dpb
dpb on 9 Apr 2016
Edited: dpb on 10 Apr 2016
You're not tryin'...
>> sum(~A,2)
ans =
2
4
3
4
>> sum(A==0)
ans =
2 2 2 3 2 2
>>
NB: The latter if A is something other than [0,1]. Showed two alternatives for variety, there are a number of other, particularly when using the special characteristics of the specific values given.
ADDENDUM Actually, ~A is safe for Matlab irrespective of the values of A as long as exact zero is the criterion (that is, no "approximately equal" small floating point values) as anything nonzero is treated as T. This isn't so in some other languages.
  4 Comments
Walter Roberson
Walter Roberson on 10 Apr 2016
function [B, C] = nnz_function(A)
B = sum(~A,2);
C = sum(~A);
dpb
dpb on 10 Apr 2016
Wonder if would be worth having optional second arg of DIM for nnz??

Sign in to comment.

Categories

Find more on Sparse Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!