"uniques" giving duplicates... Matlab adding a tiny sum?

When I look for the unique values of P in column 1, i get a duplicated 0.975...
Somewhere along the line, Matlab probably decided to add a 1 x 10^-28 to some of the cells or something!
I want the 0.975's to be the same, so that on a graph & legend, I no longer get duplicated lines.
:-)
Cause?
Solution?
Doron
>> PU = unique(P(:,1))
PU = ... 0.7000 0.8000 0.9000 0.9250 0.9500 0.9750 0.9750 1.0000

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 23 Feb. 2012

0 Stimmen

4 Kommentare

Doron
Doron am 23 Feb. 2012
...Not this again!
thanks Walter
Yup, again ;-) You will get to the point where you don't trust _any_ floating point comparison. Use liberal doses of paranoia in floating point computations.
We should sell floating point awareness tin foil hats.
In some of my earlier incarnations, I had to assume that there might be compiler bugs in the floating point calculations. Not that such bugs were at all *common*, but you wouldn't want to bet someone's safety on the assumption that there were no invisible glitches.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating, Deleting, and Querying Graphics Objects finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 23 Feb. 2012

Bearbeitet:

am 22 Okt. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by