Python 中的to_numeric是四舍五入的小数点

to_numeric in python is rounding off the decimals

提问人:Robert Tuttle 提问时间:10/3/2023 最后编辑:tdelaneyRobert Tuttle 更新时间:10/3/2023 访问量:48

问:

我有以下几点:

test={'a': ['4.56','9.98','10.345']}
df=pd.DataFrame(test)
df

a
0   4.56
1   9.98
2   10.345

这些是对象,所以我想将它们转换为浮点数。

df['a']=pd.to_numeric(df['a'], errors='coerce')

    a
0   5
1   10
2   10

我得到一个小数点四舍五入的浮点数。我想要完整的浮点数:

0   4.56
1   9.98
2   10.345

我做错了什么?

Python 浮点 舍入

评论

0赞 Suraj Shourie 10/3/2023
你能格式化问题以正确缩进代码吗?
0赞 Suraj Shourie 10/3/2023
此外,应该是浮点类型。操作后检查。也许你的印刷品正在四舍五入df['a']df.dtypesto_numeric
2赞 tdelaney 10/3/2023
你能把它变成一个完全运行的脚本来演示这个问题吗?我尝试了您的代码并得到了所需的结果。如果我们能运行与您完全相同的代码,这将有助于识别问题。
0赞 Robert Tuttle 10/3/2023
df 是一个对象,而不是一个浮点数。我正在将对象转换为浮点数,但它的舍入
0赞 Robert Tuttle 10/3/2023
我以为errors='coerce'可以解决问题,但事实并非如此

答: 暂无答案