Effacer les filtres
Effacer les filtres

How can i find rows or coulmns which contain maximum zeroes?

2 vues (au cours des 30 derniers jours)
Uet
Uet le 21 Mai 2014
Commenté : Star Strider le 25 Mai 2014
Hi, I want to select rows or coulmns which contain maximum zeros? can anyone please help me how to write a script file for this.. I want to develop a simple program for Assignment method..
Reagards,
Ateeq

Réponse acceptée

Star Strider
Star Strider le 22 Mai 2014
This will give you the number of zeros in particular rows and columns:
M = [105 0 55 15; 15 0 25 75; 55 0 0 10; 0 0 5 0];
[zr,zc] = find(M == 0);
Z = accumarray([zr zc], 1 )
rowzeros = sum(Z,2)
colzeros = sum(Z,1)
produces:
rowzeros =
1
1
2
3
colzeros =
1 4 1 1
  4 commentaires
Uet
Uet le 25 Mai 2014
Thank you very much... it works perfect.
Star Strider
Star Strider le 25 Mai 2014
My pleasure!

Connectez-vous pour commenter.

Plus de réponses (1)

Romain
Romain le 21 Mai 2014
If you want the row and the colum with the maximum of values equal to zeros, I propose (for a 2D matrix) :
[numberOfZeroCol,colWithMaxZero] = max(sum(array == 0, 1))
[numberOfZeroRow,rowWithMaxZero] = max(sum(array == 0, 2))
but I'm not sure that's what you want.
  1 commentaire
Uet
Uet le 22 Mai 2014
Actually I want to find number of rows and coulumns which contain more than two zeroes as covered by color lines in given picture. Then subtract 15 (which is minimum of all uncovered numbers) from all uncovered numbers.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by