Ich fand, wie Schwimmer mit Gleichheit vergleichen hier:Numpy: Vergleichen schwebt mit Schwellen
Compare `float` and `float64` in python
Working with floating point NumPy arrays for comparison and related operations
und in anderen ähnlichen Fragen.
Aber ich kann nicht den besten Weg finden, wie man richtig schwimmt mit Schwellwert (größer oder kleiner).
Beispiel: Wir möchten überprüfen, ob Elemente in der Float-Matrix kleiner als Float-Schwelle sind.
eps = 0.1
xx = np.array([[1,2,3], [4,5,6], [7,8,9]])
yy = np.array([[1.1,2.1,3.1], [4.1,5.1,6.1], [7.1,8.2,9.3]])
dif = np.absolute(xx - yy)
print dif
print dif < eps
Druck:
[[ 0.1 0.1 0.1]
[ 0.1 0.1 0.1]
[ 0.1 0.2 0.3]]
[[False False False]
[ True True True]
[ True False False]]
Die einzige Lösung, die ich gefunden wird eine vectorize Funktion zu erstellen und jedes Element der Matrix mit treshold vergleichen: Erstens bestimmen sie nicht gleich sind und dann vergleichen mit <
oder >
. Danke für @MarkRansom.
Bitte seien Sie etwas klarer. Meinst du, du hast einen Gleitkommawert, sag 'Schwelle', und willst du sehen, ob ein anderer Wert 'x' größer ist als dieser (oder vielleicht weniger)? Was ist mit 'if x> threshold 'falsch? –
Ist http://stackoverflow.com/questions/5595425/what-is-the-best-way-to-compare-floats-for-al-altime-equality-in-python was Sie suchen? –
@MarkRansom danke. Aber in dieser Antwort fand ich nur, wie man Schwimmer für Gleichheit vergleicht, aber nicht für mehr oder weniger. Vielleicht bin ich nicht aufmerksam genug. –