【发布时间】:2017-09-25 14:04:50
【问题描述】:
In [86]: array.std()
Out[86]: 100.70953143681199
In [87]: array.std().round()
Out[87]: 101.0
In [88]: array.std().round(2)
Out[88]: 100.70999999999999
In [89]: array.std().round(decimals=2)
Out[89]: 100.70999999999999
In [90]: np.round(array.std(), decimals=2)
Out[90]: 100.70999999999999
我想将标准差四舍五入到小数点后 2 位,但到目前为止还没有用。我该如何解决?如何使它与numpy 一起使用?
【问题讨论】:
-
用
int()包围它 -
如果您想留在
numpy,您可以添加astype(),例如array.mean().round().astype(np.int) -
为什么要四舍五入std。开发?这纯粹是为了显示/报告目的吗?如果是这样,您想使用字符串格式,而不是数字舍入。 (如果你想在进一步的计算中使用 rounded 值,你应该问自己为什么要不必要地放弃这些计算的准确性。)