issue in find variable

2 个评论

Please explain to me why it gives me an empty matrix? Out of 100 only following 25 thresholds are also gives empty matrix
0.0600, 0.0700, 0.1000, 0.1500, 0.1800, 0.2100, 0.2400, 0.2900, 0.3500, 0.3600, 0.4100, 0.4200, 0.4700, 0.4800, 0.5700, 0.5800, 0.6900, 0.7000, 0.7100, 0.8200, 0.8300, 0.8400, 0.9400, 0.9500, 0.9600

回答(1 个)

Fangjun Jiang
Fangjun Jiang 2020-7-22
编辑:Fangjun Jiang 2020-7-22
floating point data precision issue. Below is an example, a and b are not equal even though all the visible digits are the same.
>> format long
>> a=1-1/3
a =
0.666666666666667
>> b=2/3
b =
0.666666666666667
>> a==b
ans =
logical
0
>> abs(a-b)<=eps
ans =
logical
1

3 个评论

Actually, I have a column matrix that contains different numbers between 0.001 to 1. For example, the 0.0600 value is repeated 7 times in the matrix. I would like to find out these numbers along with their indexes. I am trying to use for loop to find out where is exact number occurring. As I am facing above issue, anyone can suggest be how to extract the desire value from the matrix?
find(abs(YouData-0.06)<=eps)
Its work, Thanks all of you

此问题已关闭。

关闭:

2021-8-20

Community Treasure Hunt

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

Start Hunting!

Translated by