Skip to main content
 首页 » 编程设计

python之我应该使用什么函数将数据框的列四舍五入为数字

2025年05月04日22xing901022

我在 pandas 数据框中有一列,我想将所有低于 15,000 的数字取整为 15,000 或 0。

我想对 200,000 以上的数字执行相同的操作,并将它们四舍五入为 200,000。

对于四舍五入,.round() 将它取到一些有效数字 和 math.ceil()/.floor() 将数字取到最接近的整数,但这些都不能单独解决我的问题。

我假设有一些聪明的数学技巧或我没有看到的函数。

例子:

Column_to_Round    Rounded_Column 
11000              15000 
9000               15000 
3000               0 
5000               0 
16000              16000 
220000             200000 
199000             199000 

请您参考如下方法:

写一个函数并使用apply函数:

def rounding(number): 
    if number < 15000: 
        if number < 7500: 
            return 0 
        else return 15000 
    elif number > 200000: 
        return 200000 
    else return number 
 
dataset['Rounded_Column'] = dataset['Column_to_Round'].apply(rounding)