首页 > 解决方案 > 更改 pandas read_sql 中的默认小数点分隔符

问题描述

我正在创建一个 python 脚本,它根据 sybase 查询创建 csv 文件。

当 pandas 创建文件时,csv 文件中的所有数值都以“.0”结尾(例如, 2.0 而不是 2 )

我可以在查询中转换为整数,但它会影响查询性能。

为了解决这个问题,我在 read_sql 函数中将 coerce_float 参数设置为 false。

但是所有列都转换为字符串,并且某些列必须是浮点数,并且小数点分隔符是“。” 我需要“,”作为小数点分隔符。

我的问题是:有没有办法将默认小数点分隔符更改为逗号并将 coerce_float 保持为 False?

Obs:一个简单的字符串替换并不能解决我的问题,因为脚本会读取几个查询文件。

标签: pythonpandasdataframesybase

解决方案


首先,python使用“。” 写花车,所以你不能用“,”写花车。如果你想要用“,”写的浮点数,它们必须是字符串。但是,您可以在保存 .csv 时使用小数点“”保存浮点数,方法是将参数传递decimal=','df.to_csv().


推荐阅读