首页 > 解决方案 > 如何使用python将csv文件中的所有点十进制标记转换为逗号?

问题描述

我有多个 csv 文件。

在此处输入图像描述

在这些文件中,“点”用作十进制标记。

在此处输入图像描述

我想将所有点更改为逗号,然后将所有 csv 文件合并为一个 csv 文件。我怎样才能在python中做到这一点?

标签: pythoncsvnumpy

解决方案


使用pandas使得用逗号写出数字变得微不足道:

  • 读取 csv 文件 ( df = pd.read_csv('path/to/file.csv'))
  • 写出 csv 文件 ( df.to_csv('path/to/file.csv', decimal=','))

请注意,这将为您的所有数字添加引号,因为通常使用的分隔符是,. 例如,您可以使用sep=';'参数更改它。

我将寻找所有要加入的文件作为读者的练习(请参阅此处的其他答案)。

至于将所有文件合并为一个文件:

df = pd.concat([pd.read_csv(fname) for fname in files_to_convert])

推荐阅读