Pandas печать чисел с разделителем тысяч пробел

Рейтинг: 0Ответов: 1Опубликовано: 20.03.2023

Какую опцию нужно установить, чтобы при печати pandas DataFrame числа выводились в формате: 33 234 567.76 ? В функции pd.set_option не нашёл такого.

Ответы

▲ 3
import pandas as pd


def f(num: float) -> str:
    return f'{num:,.2f}'.replace(',', ' ')


pd.options.display.float_format = f
df = pd.DataFrame([123123.4567, 4545234.5678, 546566345.6789, 678655456.7890])
print(df)

Или, покороче, с лямбдой:

pd.options.display.float_format = lambda num: f'{num:,.2f}'.replace(',', ' ')
df = pd.DataFrame([123123.4567, 4545234.5678, 546566345.6789, 678655456.7890])
print(df)
               0
0     123 123.46
1   4 545 234.57
2 546 566 345.68
3 678 655 456.79