Round scientifi c значение фрейма данных - PullRequest
0 голосов
/ 26 мая 2020

Я хотел бы сэкономить место при сохранении моих данных, я не против потери информации. У данных много разных порядков величины, поэтому я не могу округлить, используя обычную функцию округления. Кажется, я не могу найти сообщение, которое помогло бы мне округлить мой набор данных, используя scientifi c numbers

12345678 => round with 3 decimals => 1.234E7

Любая помощь приветствуется: )

1 Ответ

1 голос
/ 27 мая 2020

Вы можете использовать to_csv с float_format='%.3E', чтобы вывести ваши (с плавающей запятой) данные, округленные до 3 разрядов в научной записи c, в файл csv. См. спецификацию формата для других параметров форматирования.

Минимальный пример:

pd.DataFrame([12345678]).astype(float).to_csv(float_format='%.3E')
#',0\r\n0,1.235E+07\r\n'

Нет простого способа использовать E7 вместо E+07, см. Также этот вопрос SO .

...