필터 지우기
필터 지우기

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

조회 수: 5 (최근 30일)
Eileen
Eileen 2022년 2월 9일
댓글: Chunru 2022년 2월 9일
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
Voss
Voss 2022년 2월 9일
편집: Voss 2022년 2월 9일
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?

댓글을 달려면 로그인하십시오.

답변 (2개)

Chunru
Chunru 2022년 2월 9일
a = randi(100, [3 10]);
idx = a>=20 & a<=29;
x = sum(a(idx))
x = 20
  댓글 수: 2
Eileen
Eileen 2022년 2월 9일
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 2022년 2월 9일
You are right. sum(idx(:)) will do the counting while the code above sum all the numbers in the range.

댓글을 달려면 로그인하십시오.


Matt J
Matt J 2022년 2월 9일
Yes, you can use histcounts.
counts=histcounts(yourMatrix(:),[0,20,40,60])

카테고리

Help CenterFile Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by