使用 pandas 将 .csv 文件转换为科学记数法

Converting .csv file into scientific notation with pandas

我正在尝试使用 pandas 转换 csv 文件。

def convert_file(file, columns, name):
    df = pd.read_csv(file, header=0, delimiter=',')
    df.drop(df.columns[columns], axis=1, inplace=True)
    df.to_csv(name, index=False, header=False)

删除不需要的列后,我想将数字转换为科学格式。 我有哪些选择?

示例:

当前结果 -> 期望结果

0.0053455117 -> 5.3455117e-003

0.88455491 -> 8.8455491e-001

10.576477 -> 1.0576477e+001

我有哪些选择?

利用 float_format.to_csv。考虑以下示例

import pandas as pd
df = pd.DataFrame({'x':[0.1,0.01,0.001]})
df.to_csv("file.csv",float_format="%e",header=False,index=False)

产生file.csv

1.000000e-01
1.000000e-02
1.000000e-03