Couldn't find the position of a value in vector

2 Ansichten (letzte 30 Tage)
Enez Furkan Cihan
Enez Furkan Cihan am 24 Nov. 2018
tryna find a value's location but gives me empty double row vector, why?
My vector is q and its size 1x4406 double. couldn't find out where 0.0500 is. Tried to use this " k=find(q==0.0500) " but didn't get anything worth.
Thanks in advance

Akzeptierte Antwort

the cyclist
the cyclist am 24 Nov. 2018
Bearbeitet: the cyclist am 24 Nov. 2018
The value is not exactly equal to 0.05, due to floating point representation. Try
tol = 1.e-6;
k=find(abs(q-0.0500)<tol);
  5 Kommentare
the cyclist
the cyclist am 24 Nov. 2018
Here are the elements that are nearest 0.05. Note that none of them are equal to 0.05. They are also not even with 1.e-6, which is why my code did not work.
You can change my value of tol to get as close as you need.
format long
q(2198:2206)
ans =
Columns 1 through 6
0.049918594104308 0.049941269841270 0.049963945578231 0.049986621315193 0.050009297052154 0.050031972789116
Columns 7 through 9
0.050054648526077 0.050077324263039 0.050100000000000
Enez Furkan Cihan
Enez Furkan Cihan am 24 Nov. 2018
how i couldn't think that! Thank you so much. I appreciate.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by