Как упоминалось в комментариях, это общая проблема с плавающей точкой.
Однако вы можете использовать ключевое слово float_format
для to_csv
, чтобы скрыть его:
df.to_csv('pandasfile.csv', float_format='%.3f')
или, если вы не хотите, чтобы 0.0001 округлилось до нуля:
df.to_csv('pandasfile.csv', float_format='%g')
даст вам:
Bob,0.085
Alice,0.005
в вашем выходном файле.
Объяснение %g
см. в Мини-язык спецификации формата .