如何摆脱 pandas 将 excel sheet 中的大数转换为指数?
how to get rid of pandas converting large numbers in excel sheet to exponential?
在 excel sheet 中,我有两列数字很大。
但是当我使用 read_excel() 读取 excel 文件并显示数据帧时,
这两列以科学格式打印,带有指数。
如何摆脱这种格式?
谢谢
输出在Pandas
科学计数法的应用方式通过 pandas' 显示 options:
控制
pd.set_option('display.float_format', '{:.2f}'.format)
df = pd.DataFrame({'Traded Value':[67867869890077.96,78973434444543.44],
'Deals':[789797, 789878]})
print(df)
Traded Value Deals
0 67867869890077.96 789797
1 78973434444543.44 789878
如果这只是为了展示目的,您可以将您的
将数据转换为字符串,同时逐列格式化它们:
df = pd.DataFrame({'Traded Value':[67867869890077.96,78973434444543.44],
'Deals':[789797, 789878]})
df
Deals Traded Value
0 789797 6.786787e+13
1 789878 7.897343e+13
df['Deals'] = df['Deals'].apply(lambda x: '{:d}'.format(x))
df['Traded Value'] = df['Traded Value'].apply(lambda x: '{:.2f}'.format(x))
df
Deals Traded Value
0 789797 67867869890077.96
1 789878 78973434444543.44
另一种更直接的方法是将以下行放在代码的顶部,仅格式化浮点数:
pd.options.display.float_format = '{:.2f}'.format
在 excel sheet 中,我有两列数字很大。
但是当我使用 read_excel() 读取 excel 文件并显示数据帧时,
这两列以科学格式打印,带有指数。
如何摆脱这种格式?
谢谢
输出在Pandas
科学计数法的应用方式通过 pandas' 显示 options:
控制pd.set_option('display.float_format', '{:.2f}'.format)
df = pd.DataFrame({'Traded Value':[67867869890077.96,78973434444543.44],
'Deals':[789797, 789878]})
print(df)
Traded Value Deals
0 67867869890077.96 789797
1 78973434444543.44 789878
如果这只是为了展示目的,您可以将您的 将数据转换为字符串,同时逐列格式化它们:
df = pd.DataFrame({'Traded Value':[67867869890077.96,78973434444543.44],
'Deals':[789797, 789878]})
df
Deals Traded Value
0 789797 6.786787e+13
1 789878 7.897343e+13
df['Deals'] = df['Deals'].apply(lambda x: '{:d}'.format(x))
df['Traded Value'] = df['Traded Value'].apply(lambda x: '{:.2f}'.format(x))
df
Deals Traded Value
0 789797 67867869890077.96
1 789878 78973434444543.44
另一种更直接的方法是将以下行放在代码的顶部,仅格式化浮点数:
pd.options.display.float_format = '{:.2f}'.format