Azzera filtri
Azzera filtri

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

3 visualizzazioni (ultimi 30 giorni)
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 ]

Risposte (1)

dpb
dpb il 9 Apr 2016
Modificato: dpb il 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 Commenti
Walter Roberson
Walter Roberson il 10 Apr 2016
function [B, C] = nnz_function(A)
B = sum(~A,2);
C = sum(~A);
dpb
dpb il 10 Apr 2016
Wonder if would be worth having optional second arg of DIM for nnz??

Accedi per commentare.

Categorie

Scopri di più su Sparse Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by