在Pandas数据框架中对数值进行四舍五入的方法
在Pandas DataFrame中,有多种方法可以将数值四舍五入,所以让我们逐一来看看。
让我们创建一个只有 “数据输入 “列的数据框架。
代码:
# import Dataframe class
# from pandas library
from pandas import DataFrame
# import numpy library
import numpy as np
# dictionary
Myvalue = {'DATA ENTRY': [4.834327, 5.334477,
6.89, 7.6454, 8.9659]}
# create a Dataframe
df = DataFrame(Myvalue,
columns = ['DATA ENTRY'])
# show the dataframe
df
输出:
方法1:使用numpy.round()。
语法: numpy.round_(arr, decimals = 0, out = None)
返回:一个数组,其中所有数组元素都是
四舍五入,具有与输入相同的类型。
这种方法可以用来将任何特定列的值四舍五入到特定的小数位,也可以用来将整个数据框的值四舍五入到特定的小数位。
例子:将 “DATA ENTRY “栏的数值四舍五入到小数点后2位。
# import Dataframe class
# from pandas library
from pandas import DataFrame
# import numpy library
import numpy as np
# dictionary
Myvalue = {'DATA ENTRY': [4.834327, 5.334477,
6.89, 7.6454, 8.9659]}
# create a Dataframe
df = DataFrame(Myvalue,
columns = ['DATA ENTRY'])
# Rounding value of 'DATA ENTRY'
# column upto 2 decimal places
roundplaces = np.round(df['DATA ENTRY'],
decimals = 2)
# show the rounded value
roundplaces
输出:
方法2:使用Dataframe.apply()和numpy.ceil()一起。
语法: Dataframe/Series.apply(func, convert_dtype=True, args=())
返回值: 应用函数/操作后的潘达系列。
语法: numpy.ceil(x[, out]) = ufunc ‘ceil’)
返回值 : 一个数组,每个浮动数据类型的元素的上限。
这些方法用于将数值四舍五入到最高值(大于特定值的最小整数)。
例子:对某一列的数值进行四舍五入。
# import Dataframe from
# pandas library
from pandas import DataFrame
# import numpy
import numpy as np
# dictionary
Myvalue = {'DATA ENTRY': [4.834327, 5.334477,
6.89, 7.6454, 8.9659]}
# create a Dataframe
df = DataFrame(Myvalue,
columns = ['DATA ENTRY'])
# Here we are rounding the
# value to its ceiling values
roundUp = df['DATA ENTRY'].apply(np.ceil)
# show the rounded value
roundUp
输出:
方法3:使用Dataframe.apply()和numpy.floor()一起。
语法 : numpy.floor(x[, out]) = ufunc ‘floor’)
返回值: 一个数组,包含每个元素的底线。
这些方法用于将数值四舍五入到底限值(比特定数值小的最大整数)。
例子:将 “DATA ENTRY “列的数值四舍五入到其对应的底限值。
# import Dataframe class
# from pandas library
from pandas import DataFrame
# import numpy library
import numpy as np
# dictionary
Myvalue = {'DATA ENTRY':[4.834327, 5.334477,
6.89, 7.6454, 8.9659] }
# create a Dataframe
df = DataFrame(Myvalue,
columns = ['DATA ENTRY'])
# Rounding of Value to its Floor value
rounddown = df['DATA ENTRY'].apply(np.floor)
# show the rounded value
rounddown
输出: