Nat*_*ola 8 python machine-learning data-analysis pandas
在Excel工作表中,我有两列大数字.
但是当我用read_excel()读取excel文件并显示数据帧时,
这两列以科学格式打印,呈指数形式.
如何摆脱这种格式?
谢谢
熊猫输出
Ser*_*nov 11
应用科学记数法的方式是通过熊猫的选项来控制的:
import pandas as pd
pd.set_option('display.precision',3)
pd.DataFrame({'x':[.001]})
x
0 0.001
Run Code Online (Sandbox Code Playgroud)
但
pd.DataFrame({'x':[.0001]})
x
0 1.000e-04
Run Code Online (Sandbox Code Playgroud)
但
pd.set_option('display.precision',4)
pd.DataFrame({'x':[.0001]})
x
0 0.0001
Run Code Online (Sandbox Code Playgroud)
您可以在pandas docs的"选项和设置"部分中看到有关如何控制pandas输出的更多信息.
编辑
如果这仅仅是出于演示目的,您可以在逐列格式化数据时将数据转换为字符串:
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
Run Code Online (Sandbox Code Playgroud)
另一种更直接的方法是将以下行放在代码的顶部,这些行只会格式化浮点数:
pd.options.display.float_format = '{:.2f}'.format
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16809 次 |
最近记录: |