Ошибка округления в пандах

Почему это

>>> pd.Series(94.175).values[0]
>>> 94.174999999999997

Я использую python3.5 и pandas0.20 под ноутбуком jupyter.


person Zhang Chuheng    schedule 29.08.2017    source источник
comment
Также связано: stackoverflow.com/questions/1089018/ и docs.python.org /3/tutorial/floatingpoint.html   -  person    schedule 29.08.2017


Ответы (1)


Это связано с тем, что некоторые числа не могут быть точно представлены в виде десятичных точек. Чтобы найти точное значение десятичной точки, вы можете использовать оператор .hex. И чтобы преобразовать его в более интерпретируемый, вы можете использовать круглую функцию.

person Daniyal Ahmed    schedule 29.08.2017
comment
чтобы преобразовать его в более интерпретируемый, вы можете использовать круглую функцию: вместо этого просто используйте правильное (печатное) форматирование. Округление просто превращает его в другое/то же самое число с плавающей запятой, которое все еще не может быть правильно представлено. - person ; 29.08.2017