python - to_numeric(..., downcast='float') 过于激进
问题描述
浮动说明:行为出乎意料且可能有害。
对于大浮点数,使用带有 downcast='float' 的 to_numeric 似乎与使用 .astype('float32') 一样有力,因为即使该结果不再是 == 参数,它也会返回向下转换的结果。
pd.set_option('display.float_format', '{:.2f}'.format)
s = pd.Series(9876543210.0)
s.astype('float32') # 9876543488.00; dtype: float32
s.astype('float32') == s # False
pd.to_numeric(s, downcast='float') # 9876543488.00; dtype: float32
pd.to_numeric(s, downcast='float') == s # False
预期输出:
s = pd.Series(9876543210.0)
pd.to_numeric(s, downcast='float') # 9876543210.00; dtype: float64
pd.to_numeric(s, downcast='float') == s # True
如果有人知道,请给我任何解决方案。
解决方案
推荐阅读
- kubernetes - 如何在 EKS Fargate 中使用 Fluentbit 设置自定义日志记录?
- spring-boot - 如何在 yaml 中指定默认的 pessimistic_write 锁定超时?
- sql - 如何分解表以获得最佳查询
- asp.net - ASP.NET 中内置身份验证的控制器和视图在哪里?
- rust - 从 mut ref 创建的指针上过度激进的 noalias?
- google-apps-script - 如何在多张 Google 工作表上运行脚本
- graphql - 有没有办法使 GraphQLObjectType 的字段动态/非必需,以便接收动态键值对
- reactjs - 与 TS 反应 - 无法从窗口导出 Redux Devtools
- reactjs - 如何通过按钮从一个组件解析数据到另一个组件
- javascript - 如果我在函数内或函数调用周围围绕代码包装 Try/Catch 是否重要?