Python PANDAS 写入 csv : how to set decimal point (".", 或 ",")?

标签 python csv pandas decimal-point

在将 DataFrame 写入 csv 文件时,我似乎找不到为 float (“.”或“,”)设置小数点的选项。 (阅读没问题。) 我的任务/问题:我正在发布一个程序/脚本,并希望所有用户独立于他们的操作系统和语言设置来使用它,并专门生成一个带有小数点设置的 csv 输出,如“locale.localeconv()[”decimal_point “]”。 “float_format”选项对我不起作用。我是否需要将每个 float 转换为字符串并替换“。”和 ”,”? 如果这篇文章发布在其他地方,请原谅我的错误并提供正确的链接。

非常感谢您的时间和精力!!

最佳答案

不会那么高效,但可以完成工作(只是 to_csv)

In [29]: df = DataFrame(dict(A = [1.5,2.5], B = [2.5,3.0]))

In [30]: df
Out[30]: 
     A    B
0  1.5  2.5
1  2.5  3.0

In [31]: df.applymap(lambda x: str(x).replace('.',','))
Out[31]: 
     A    B
0  1,5  2,5
1  2,5  3,0

这应该会快一点(至少需要 0.12)

In [37]: df.applymap(str).replace(r'\.',',',regex=True)
Out[37]: 
     A    B
0  1,5  2,5
1  2,5  3,0

关于Python PANDAS 写入 csv : how to set decimal point (".", 或 ",")?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19249318/

相关文章:

Python Pip 安装 SSL 错误 749

python - 通过删除 Python 中的子集来折叠短语列表

python - 编写 CSV 以存储在 Google Cloud Storage 中

java - 在 Java 上使用 Map_only Hadoop 选择函数

python - 根据索引使 Pandas Dataframe 列等于另一个 Dataframe 中的值

python - 合并两个不同形状的数据框中的列

python - 如何使用Python正则表达式匹配最里面的括号集?

python - 使用python读取格式化文本

python - 如何使用两列进行 pandas groupby 但合并组以获得这两列中键的唯一组合

python - 嵌套树 DataFrame reshape