是否可以在Python中舍入为整数并删除数组中的小数点

问题描述 投票:0回答:2

生成数组的列表之间的运算结果四舍五入为整数后,有没有办法去掉小数点?我在 Jupyter 笔记本中使用 python。

我应该使用“np.round”以外的东西吗?

“FoodSpent”和“Income”只是我创建的两个数据列表。最初的四舍五入尝试保留了小数点。

>>>PercentFood = np.around((FoodSpent / Income) * 100, 0)
>>>PercentFood

array([[ 10.,   7.,  11.,  10.,   6.,  10.,  10.,  12.,  11.,   9.,  11.,
         14.]

感谢给出的建议,我运行了以下命令,该命令向下舍入为整数而不给出小数点。

>>> PercentFood = ((FoodSpent / Income) * 100)
>>> PercentFood.astype(int)

array([[ 9,  6, 11,  9,  6,  9, 10, 11, 10,  9, 11, 13]])



arrays python-3.x numpy rounding
2个回答
1
投票

我不确定你的代码在这么多上下文中究竟如何工作,但你可以将其放在四舍五入之后以消除小数点。

PercentFood = [round(x) for x in PercentFood]


0
投票
OP建议的答案执行向下取整运算(“向下”舍入到最接近的整数)。对于更典型的舍入,请使用 hpaulj 的建议:

import numpy as np foo = [1.1, 1.9, 3.4, 3.5] bar = np.rint(foo).astype(int) print(bar)
结果是:

[1, 2, 3, 4]
    
© www.soinside.com 2019 - 2024. All rights reserved.