How to find index range of range of values in an array

조회 수: 47 (최근 30일)
jess Kapin
jess Kapin 2021년 4월 5일
댓글: Are Mjaavatten 2021년 4월 6일
I have an array of one row and 163495 columns. The values in this array range from 0-160. I am trying to find the indices that the values are from 69-72. When I use the find x==69, it computes out an empty array.
  댓글 수: 1
jess Kapin
jess Kapin 2021년 4월 5일
It works for any integers (0 and 160 in this case) but I cannot use it for any non-integers

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

답변 (1개)

Are Mjaavatten
Are Mjaavatten 2021년 4월 5일
i = find(x>=69 & x<=72);;
  댓글 수: 2
jess Kapin
jess Kapin 2021년 4월 5일
this results in: i = 1×0 empty double row vector
and when I click on the vector it just says val =
and the rest is blank.
I think this may be because they are not integers? So they are not exactly 69 and 72?
Are Mjaavatten
Are Mjaavatten 2021년 4월 6일
My suggestion should work for both integers and non-integers. As a demonstration, try:
y = 60:0.3:80;
i = find(y>=69 & y<=72)
y(i)
Your result seems to indicate that x contains no values in the specified range.
Are you sure x contains what you think? Try, e.g.;
x(1:100)
to see if the values look right.

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

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by