当前位置: 首页 > 知识库问答 >
问题:

为什么熊猫圆法不把0.5圆到1?[副本]

汤跃
2023-03-14

我把这个贴在我认为是答案的地方,因为我在这里找不到类似的问题答案。

>>> import pandas as pd
>>> pd.Series([0.5, 1.5, 2.5, 3.5, 4.5]).round()
0    0.0
1    2.0
2    2.0
3    4.0
4    4.0
dtype: float64
>>> [round(x) for x in [0.5, 1.5, 2.5, 3.5, 4.5]]
[1.0, 2.0, 3.0, 4.0, 5.0]

Python 3.6:

>>> [round(x) for x in [0.5, 1.5, 2.5, 3.5, 4.5]]
[0, 2, 2, 4, 4]

这与浮点表示或我的平台(Mac OS X)有关吗?

共有1个答案

董建德
2023-03-14

我相信这实际上是python中的预期行为,而不是浮点问题。查看文档:

如果两个倍数相等接近,则向偶数选择进行舍入(例如,round(0.5)和round(-0.5)都是0,而round(1.5)是2)

 类似资料:
  • 缩放最常用的应用之一,就是在水平方向或垂直方向拉伸一个圆,把它变成椭圆。本节,我们将通过平移和横向上拉伸画布上下文,再绘制圆,来创建一个椭圆。 图4-10 圆变换为椭圆 绘制步骤 按照以下步骤,绘制一个椭圆: 1. 定义画布上下文: window.onload  = function(){ var canvas  = document.getElementById("myCanvas"); va

  • 如果一个数字有精确的二进制表示,比如(十进制)0.5,难道不应该正确地四舍五入吗? 编辑:该问题发生在3.4.3版本中,但不发生在2.7.6版本中

  • 使用输入对应关系映射序列值(可以是dict、序列或函数) 对Series的值调用函数。可以是ufunc(适用于整个系列的NumPy函数)或仅适用于单个值的Python函数

  • 参考这个答案,Lev说包括开始和停止索引,所以我尝试了这个: 但它们也不同。为什么啊? 有人能帮我吗?

  • Java程序。使用最新版本的eclipse和java。程序正常工作,但是我不明白为什么我看不到钟摆底部的圆。程序应该把钟摆显示为一条连接顶部和底部圆圈的线。我已经尝试了setFill()和setStroke()代码,但仍然无法解决这个问题...可能是一些小而简单的东西,但我错过了。请让我知道什么在我面前!