如何将 numpy 浮点数数组转换为整数
您可以使用以下方法将 NumPy 浮点数数组转换为整数数组:
方法 1:将浮点数转换为整数(向下舍入)
rounded_down_integer_array = float_array. astype (int)
方法2:将浮点数转换为整数(四舍五入到最接近的整数)
rounded_integer_array = (np. rint (some_floats)). astype (int)
方法 3:将浮点数转换为整数(向上舍入)
rounded_up_integer_array = (np. ceil (float_array)). astype (int)
以下示例展示了如何在实践中使用以下 NumPy 浮点数组的每种方法:
import numpy as np #create NumPy array of floats float_array = np. array ([2.33, 4.7, 5.1, 6.2356, 7.88, 8.5]) #view array print (float_array) [2.33 4.7 5.1 6.2356 7.88 8.5 ] #view dtype of array print ( float_array.dtype ) float64
示例 1:将浮点数转换为整数(向下舍入)
以下代码演示如何将 NumPy 浮点数数组转换为整数数组,其中每个浮点数都四舍五入为最接近的整数:
#convert NumPy array of floats to array of integers (rounded down)
rounded_down_integer_array = float_array. astype (int)
#view array
print (rounded_down_integer_array)
[2 4 5 6 7 8]
#view dtype of array
print (rounded_down_integer_array. dtype )
int32
请注意,每个浮点数已四舍五入为最接近的整数,并且新数组的类型为int32 。
示例 2:将浮点数转换为整数(四舍五入到最接近的整数)
以下代码演示如何将 NumPy 浮点数数组转换为整数数组,其中每个浮点数都四舍五入为最接近的整数:
#convert NumPy array of floats to array of integers (rounded to nearest)
rounded_integer_array = (np. rint (float_array)). astype (int)
#view array
print (rounded_integer_array)
[2 5 5 6 8 8]
#view dtype of array
print(rounded_integer_array. dtype )
int32
请注意,每个浮点数已四舍五入为最接近的整数,并且新数组的类型为int32 。
示例 3:将浮点数转换为整数(向上舍入)
以下代码演示如何将 NumPy 浮点数数组转换为整数数组,其中每个浮点数都四舍五入为最接近的整数:
#convert NumPy array of floats to array of integers (rounded up)
rounded_up_integer_array = (np. ceil (float_array)). astype (int)
#view array
print (rounded_up_integer_array)
[3 5 6 7 8 9]
#view dtype of array
print (rounded_up_integer_array. dtype )
int32
请注意,每个浮点数已四舍五入为最接近的整数,并且新数组的类型为int32 。
其他资源
以下教程解释了如何在 NumPy 中执行其他常见任务:
如何用值填充 NumPy 数组
如何从 NumPy 数组中删除特定元素
如何替换 NumPy 数组中的元素
如何从 NumPy 数组中获取特定行