Я хотел бы отформатировать свои отрицательные числа в формате «Бухгалтерия», то есть в скобках и запятой в качестве разделителя тысяч. Например, я хотел бы отформатировать -1000000 как (1 000 000).
Я смог отформатировать свои числа (в сводной таблице) с разделителем тысяч или в скобках для отрицательных чисел, но не для обоих.
это форматирует числа в сводной таблице (псевдоним pt) с разделителем тысяч:
pd.options.display.float_format = '{:,.0f}'.format print(pt)
это форматирует числа всводная таблица с скобками для отрицательных чисел:
formatter = lambda x: '(%s)' % str(x)[1:] if x < 0 else str(x) pd.options.display.float_format = formatter pt
def my_formatter(x): if x < 0: return '({:,.0f})'.format(-x) return '{:,.0f}'.format(x) pd.options.display.float_format = my_formatter
Пример:
pd.DataFrame([10000000., -20000000.]) # 0 #0 10,000,000 #1 (20,000,000)