display.float_format
Опция display.float_format управляет отображением чисел с плавающей точкой
в Pandas. Она принимает функцию-форматтер, которая преобразует число в строку.
Опция применяется ко всем числам с плавающей точкой при выводе таблиц и серий,
но не изменяет сами данные.
Синтаксис
pd.set_option('display.float_format', format_function)
Где format_function - это функция, принимающая число с плавающей точкой
и возвращающая строку.
Пример
Отобразим числа с двумя знаками после запятой:
import pandas as pd
pd.set_option('display.float_format', '{:.2f}'.format)
df = pd.DataFrame({
'a': [1.2345, 2.3456, 3.4567],
'b': [4.5678, 5.6789, 6.7890]
})
print(df)
Результат выполнения кода:
a b
0 1.23 4.57
1 2.35 5.68
2 3.46 6.79
Обратите внимание, что числа округлены до двух знаков.
Пример
Выведем числа в формате с фиксированной шириной и тремя знаками после запятой:
import pandas as pd
def format_float(x):
return f'{x:8.3f}'
pd.set_option('display.float_format', format_float)
df = pd.DataFrame({
'a': [1.2, 3.456, 78.9],
'b': [0.123, 45.67, 8.9]
})
print(df)
Результат выполнения кода:
a b
0 1.200 0.123
1 3.456 45.670
2 78.900 8.900
Все числа выровнены по правому краю с общей шириной 8 символов.
Пример
Настроим формат для отображения больших чисел с разделителями тысяч:
import pandas as pd
pd.set_option('display.float_format', '{:,.2f}'.format)
ser = pd.Series([1234.5, 678901.234, 98765.4321])
print(ser)
Результат выполнения кода:
0 1,234.50
1 678,901.23
2 98,765.43
dtype: float64
Пример
Сбросим формат отображения к стандартному значению:
import pandas as pd
pd.set_option('display.float_format', '{:.3f}'.format)
df = pd.DataFrame({'a': [1.23456, 7.89123]})
print('С форматированием:')
print(df)
pd.reset_option('display.float_format')
print('\nПосле сброса:')
print(df)
Результат выполнения кода:
С форматированием:
a
0 1.235
1 7.891
После сброса:
a
0 1.23456
1 7.89123
После сброса числа выводятся с максимальной точностью.
Смотрите также
-
функция
set_option,
которая устанавливает глобальные опции Pandas -
функция
get_option,
которая получает значение опции Pandas -
опция
display.precision,
которая задаёт точность вывода чисел -
опция
display.max_rows,
которая ограничивает количество выводимых строк