I want the number of rows that have bigger than 0 or 1
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Giannakis Stoukas
le 23 Mar 2015
Commenté : per isakson
le 23 Mar 2015
For example i have the matrix A=[2 3 1; 4 7 6; 1 9 1; 1 0 1] and i want the overall number of the rows that have bigger than 1 price. To this exammple the number i should get is 3,because the max price of the last row is 1.
0 commentaires
Réponse acceptée
per isakson
le 23 Mar 2015
Modifié(e) : per isakson
le 23 Mar 2015
Is this what you look for
length(find(max(A,[],2)>1))
ans =
3
2 commentaires
Plus de réponses (1)
Guillaume
le 23 Mar 2015
sum(any(A > 1, 2))
Basically,
- A > 1 compare the matrix to 1, this returns a matrix of logical
- any(X, 2) returns a column vector that is true if any of the row element is true, so any(A>1, 2) is a column with 1 for any row that as at least one element >1.
- sum(X) sums all the ones for the rows that have at least one element greater than 1, so is the number of rows that you want
0 commentaires
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!