Szukam porównania dwóch ramek danych, które powinny być identyczne. Jednak z powodu precyzji zmiennoprzecinkowej powiedziano mi, że wartości się nie zgadzają. Stworzyłem przykład do symulacji poniżej. Jak uzyskać poprawny wynik, aby ostateczna ramka danych porównania przyniosła wynik true dla obu komórek?Porównanie Pand i DataFrame i precyzja zmiennoprzecinkowa
a = pd.DataFrame({'A':[100,97.35000000001]})
b = pd.DataFrame({'A':[100,97.34999999999]})
print a
A
0 100.00
1 97.35
print b
A
0 100.00
1 97.35
print (a == b)
A
0 True
1 False
To jest idealne, dzięki @EdChum. Aby uzyskać odniesienie do uzyskania wyniku ramek danych jako tego samego typu co oryginalna kontrola równości, zrobiłem: 'print pd.DataFrame (np.isclose (a, b), columns = a.columns, index = a.index)' A 0 Prawda 1 Prawda – PH82