使用 pandas 将 .csv 文件转换为科学计数法
Posted
技术标签:
【中文标题】使用 pandas 将 .csv 文件转换为科学计数法【英文标题】:Converting .csv file into scientific notation with pandas 【发布时间】:2021-10-21 11:29:24 【问题描述】:我正在尝试使用 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
【问题讨论】:
你看过这个帖子吗:***.com/questions/21137150/…? 【参考方案1】:我有什么选择?
利用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
【讨论】:
以上是关于使用 pandas 将 .csv 文件转换为科学计数法的主要内容,如果未能解决你的问题,请参考以下文章
pandas.read_csv 将字符串转换为科学记数法中的“数字”(我不想要)
如何使用 python 和 pandas 将 Csv 文件转换为 libsvm?
使用 python 和 pandas 将错误创建的大型 csv 文件转换为制表符分隔文件