*51*

You can use the following methods to convert a NumPy array of floats to an array of integers:

**Method 1: Convert Floats to Integers (Rounded Down)**

rounded_down_integer_array = float_array.astype(int)

**Method 2: Convert Floats to Integers (Rounded to Nearest Integer)**

rounded_integer_array = (np.rint(some_floats)).astype(int)

**Method 3: Convert Floats to Integers (Rounded Up)**

rounded_up_integer_array = (np.ceil(float_array)).astype(int)

The following examples show how to use each method in practice with the following NumPy array of floats:

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

**Example 1: Convert Floats to Integers (Rounded Down)**

The following code shows how to convert a NumPy array of floats to an array of integers in which each float is rounded down to the nearest integer:

**#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**

Notice that each float has been rounded down to the nearest integer and the new array has a dtype of **int32**.

**Example 2: Convert Floats to Integers (Rounded to Nearest Integer)**

The following code shows how to convert a NumPy array of floats to an array of integers in which each float is rounded to the nearest integer:

**#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**

Notice that each float has been rounded to the nearest integer and the new array has a dtype of **int32**.

**Example 3: Convert Floats to Integers (Rounded Up)**

The following code shows how to convert a NumPy array of floats to an array of integers in which each float is rounded up to the nearest integer:

**#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**

Notice that each float has been rounded up to the nearest integer and the new array has a dtype of **int32**.

**Additional Resources**

The following tutorials explain how to perform other common tasks in NumPy:

How to Fill NumPy Array with Values

How to Remove Specific Elements from NumPy Array

How to Replace Elements in NumPy Array

How to Get Specific Row from NumPy Array