python - 管理浮点精度 - 最佳实践?
问题描述
在 Python / Pandas 中管理浮点精度的最佳实践是什么?
经典的例子是
df = pd.DataFrame({'a': [3], 'b': [0.1], 'c': [0.3]})
df['a'] * df['b'] - df['c']
产量
0 5.55111512e-17
dtype: float64
但我还没有找到有关如何管理此类问题的建议。
目前,我的解决方法是将结果四舍五入到小数点后 10 位,但这感觉很笨拙。
我可以使用更好的 dtype 吗?还是我应该更加注意模型中保存的每一列浮点数的精度?
所以问题是:有没有办法执行计算df['a'] * df['b'] - df['c']
以使其产生0
?
解决方案
推荐阅读
- javascript - 为什么这段代码不起作用?(我是一个完全的js菜鸟,可能犯了一些明显的错误)
- javascript - 没有使用 Passport.js 创建会话
- ios - 无法为 14.2 版设备 MacFamily20,1 设置特征
- c - 计算数组中元音数量的问题
- css - 样式化组件 React.js 中的三元语句
- excel - SVG 混合模式乘以 IE11 和 EXCEL 2019
- css - 宽度属性不适用于 d3 样式
- homebrew - 错误:google-backup-and-sync:似乎已经有一个应用程序
- node.js - 节点找不到自定义类的模块
- python - 调试python代码以检索rest api访问令牌