NumPy - 小数舍入 ufunc
小数舍入通用函数 (ufunc)
NumPy 中的小数舍入通用函数 (ufunc) 旨在将数组元素舍入到指定的小数位数。这些 ufunc 逐个元素执行舍入操作,确保数组中的每个值都按照指定的精度进行舍入。
NumPy 提供了几个舍入 ufunc,例如 numpy.around()、numpy.floor()、numpy.ceil() 和 numpy.trunc(),每个 ufunc 处理舍入的方式略有不同。
numpy.around() 函数
numpy.around() 函数用于将数组元素舍入到指定的小数位数。它功能多样,可以处理整数和浮点数。
示例
在下面的示例中,我们使用 numpy.around() 函数将数组元素四舍五入到小数点后 1 位 -
import numpy as np # 定义一个数组 a = np.array([1.123, 2.456, 3.789]) # 将元素四舍五入到小数点后 1 位 result = np.around(a, decimals=1) print(result)
以下是得到的输出 -
[1.1 2.5 3.8]
numpy.round_()函数
numpy.round_() 函数是 numpy.around() 函数的别名。它的行为方式相同,将数组元素四舍五入到指定的小数位数。
示例
在下面的示例中,我们使用 numpy.round_() 函数将数组元素四舍五入到小数点后 2 位 -
import numpy as np # 定义一个数组 a = np.array([1.12345, 2.45678, 3.78901]) # 将元素四舍五入到小数点后 2 位 result = np.round_(a, decimals=2) print(result)
这将产生以下结果 -
[1.12 2.46 3.79]
numpy.floor() 函数
numpy.floor() 函数用于将数组元素向下舍入到最接近的整数。它返回小于或等于数组中每个元素的最大整数。
示例
在下面的示例中,我们使用 numpy.floor() 函数将数组元素向下舍入到最接近的整数 -
import numpy as np # 定义一个数组 a = np.array([1.7, 2.3, 3.9]) # 应用 floor 函数 result = np.floor(a) print(result)
以下是上述代码的输出 -
[1. 2. 3.]
numpy.ceil() 函数
numpy.ceil() 函数用于将数组元素向上舍入到最接近的整数。它返回大于或等于数组中每个元素的最小整数。
示例
在下面的示例中,我们使用 numpy.ceil() 函数将数组元素向上舍入到最接近的整数 -
import numpy as np # 定义一个数组 a = np.array([1.2, 2.5, 3.1]) # 应用 ceil 函数 result = np.ceil(a) print(result)
这将产生以下结果 -
[2. 3. 4.]
numpy.trunc() 函数
numpy.trunc() 函数用于通过删除小数部分将数组元素截断为整数部分。
示例
在以下示例中,我们使用 numpy.trunc() 函数截断数组元素 -
import numpy as np # 定义数组 a = np.array([1.9, 2.6, 3.4]) # 应用 trunc 函数 result = np.trunc(a) print(result)
以下是得到的输出 -
[1. 2. 3.]