Effacer les filtres
Effacer les filtres

Is there a way to count the integers in a matrix that fall within a certain range?

5 vues (au cours des 30 derniers jours)
Eileen
Eileen le 9 Fév 2022
Commenté : Chunru le 9 Fév 2022
I am working on a problem that gives me a 3x10 matrix with numbers ranging from 1 to 100. I want to count the number of integers that fall within a ceratin catagory such as 0 to 19, 20 to 39, 40 to 59, etc. Is there a way for me to find the sum of integers within these specific ranges? I'm still very new to MatLab. Thank you.
  1 commentaire
Voss
Voss le 9 Fév 2022
Modifié(e) : Voss le 9 Fév 2022
Questions: Might your matrix have some non-integer elements? Or is it always all integers? And if it does have non-integers, is it correct that you don't want to include those non-integers in the sums?

Connectez-vous pour commenter.

Réponses (2)

Chunru
Chunru le 9 Fév 2022
a = randi(100, [3 10]);
idx = a>=20 & a<=29;
x = sum(a(idx))
x = 20
  2 commentaires
Eileen
Eileen le 9 Fév 2022
using x = sum(a(idx)) gave me some pretty large numbers for some reason so I ended up just using sum(sum(idx))
Chunru
Chunru le 9 Fév 2022
You are right. sum(idx(:)) will do the counting while the code above sum all the numbers in the range.

Connectez-vous pour commenter.


Matt J
Matt J le 9 Fév 2022
Yes, you can use histcounts.
counts=histcounts(yourMatrix(:),[0,20,40,60])

Catégories

En savoir plus sur Resizing and Reshaping 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!

Translated by