필터 지우기
필터 지우기

error finding placement of specific number in a vector

조회 수: 1 (최근 30일)
Candice Cooper
Candice Cooper 2021년 5월 25일
댓글: Candice Cooper 2021년 5월 25일
I have a single column vector named 'lon' of 8640 values. I'm trying to find which row has a certain value. I've tried using find(lon==120), but all it returns is an empty 0 x 1 double column vector. I've tried figuring this out online, but all I come across is the find function, which isn't working for me.

채택된 답변

DGM
DGM 2021년 5월 25일
편집: DGM 2021년 5월 25일
Does the vector contain 120?
Does the vector contain exactly 120?
If it's floating point, the answer might not be what you think it is.
A = linspace(0,10,19).'
A = 19×1
0 0.5556 1.1111 1.6667 2.2222 2.7778 3.3333 3.8889 4.4444 5.0000
find(A == 3.3333)
ans = 0×1 empty double column vector
find(abs(A-3.3333)<1E-3)
ans = 7

추가 답변 (1개)

Sulaymon Eshkabilov
Sulaymon Eshkabilov 2021년 5월 25일
Hi,
Your data might be in a floating point format and if that is the case, then you need to be careful with logical indexing. If this is the case, you may need to use round up, select how many correct decimal digits to consider, and so forth. Moreover, inftead of find(Ion==120), you can use IND = (Ion==120) that shows you the indexes.
If you post your data, more specific answer will be provided.
Good luck.

카테고리

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