Python 如何使用千位分隔符和括号中的负数格式化数据透视表编号?
我想将负数的格式设置为“会计”格式,即用括号和逗号作为千位分隔符。例如,我想将-1000000格式化为(1000000) 我可以用1000个分隔符或括号来设置我的数字格式(在透视表中),但不能同时使用两者Python 如何使用千位分隔符和括号中的负数格式化数据透视表编号?,python,pandas,Python,Pandas,我想将负数的格式设置为“会计”格式,即用括号和逗号作为千位分隔符。例如,我想将-1000000格式化为(1000000) 我可以用1000个分隔符或括号来设置我的数字格式(在透视表中),但不能同时使用两者 这将使用千位分隔符格式化数据透视表(别名pt)中的数字: pd.options.display.float_format = '{:,.0f}'.format print(pt) 这将格式化数据透视表中的数字,并用括号表示负数: formatter = lambda x: '(%s)'
- 这将使用千位分隔符格式化数据透视表(别名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
formatter=lambda x:'(%s)%str(x)[1:]如果x<0,其他str(x) pd.options.display.float_格式=格式化程序 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)