Python 将带有scientific符号的txt文件读取到scientific符号中的数据帧

Python 将带有scientific符号的txt文件读取到scientific符号中的数据帧,python,pandas,scientific-notation,Python,Pandas,Scientific Notation,有没有一种方法可以在txt文件中保持科学符号的一致性,并在将其读入数据帧后保持一致 pd.read\u csv(物理文件[1],sep=”“,header=None) 上面的命令是压制科学符号 考虑数据帧df df = pd.DataFrame(1000000., range(5), range(5)) print(df) 0 1 2 3 4 0 1000000.0 1000000.0 1000

有没有一种方法可以在txt文件中保持科学符号的一致性,并在将其读入数据帧后保持一致

pd.read\u csv(物理文件[1],sep=”“,header=None)


上面的命令是压制科学符号

考虑数据帧
df

df = pd.DataFrame(1000000., range(5), range(5))
print(df)

           0          1          2          3          4
0  1000000.0  1000000.0  1000000.0  1000000.0  1000000.0
1  1000000.0  1000000.0  1000000.0  1000000.0  1000000.0
2  1000000.0  1000000.0  1000000.0  1000000.0  1000000.0
3  1000000.0  1000000.0  1000000.0  1000000.0  1000000.0
4  1000000.0  1000000.0  1000000.0  1000000.0  1000000.0

您可以使用pandas
“displat.float\u format”
选项控制格式设置。您还可以使用
pd.option\u context

使用
'{:0.4e}.format
作为自定义格式化程序。更改
4
以满足您的需要

with pd.option_context('display.float_format', '{:0.4e}'.format):
    print(df)

           0          1          2          3          4
0 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06
1 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06
2 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06
3 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06
4 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06 1.0000e+06

科学记数法是数字的外部表示,而不是内部属性。你可以用科学或定点表示法显示任何浮点数,这是你的选择,不是你的选择。@DYZ我同意。但是我怎样才能让熊猫以科学符号而不是默认的定点符号显示呢?这个问题(特别是第一个答案)可能会对@DYZ有帮助。答案显示了如何抑制科学符号,与我的意图正好相反。答案解释了“您可以指定自己的字符串转换器…”这可能是一个科学符号的转换。