Dada una array numpy, la tarea es filtrar los enteros de una array que contiene flotantes y enteros. Veamos algunos métodos para resolver una tarea dada.
Método #1: Usando un tipo (int)
Python3
# Python code to demonstrate # filtering integers from numpy array # containing integers and float import numpy as np # initialising array ini_array = np.array([1.0, 1.2, 2.2, 2.0, 3.0, 2.0]) # printing initial array print ("initial array : ", str(ini_array)) # filtering integers result = ini_array[ini_array != ini_array.astype(int)] # printing resultant print ("final array", result)
Producción:
initial array : [ 1. 1.2 2.2 2. 3. 2. ] final array [ 1.2 2.2]
Método #2: Usar np.equal() y np.mod()
Python3
# Python code to demonstrate # filtering integers from numpy array # containing integers and float import numpy as np # initialising array ini_array = np.array([1.0, 1.2, 2.2, 2.0, 3.0, 2.0]) # printing initial array print ("initial array : ", str(ini_array)) # filtering integers result = ini_array[~np.equal(np.mod(ini_array, 1), 0)] # printing resultant print ("final array : ", str(result))
Producción:
initial array : [ 1. 1.2 2.2 2. 3. 2. ] final array : [ 1.2 2.2]
Método #3: Usar np.isclose()
Python3
# Python code to demonstrate # filtering integers from numpy array # containing integers and float import numpy as np # initialising array ini_array = np.array([1.0, 1.2, 2.2, 2.0, 3.0, 2.0]) # printing initial array print ("initial array : ", str(ini_array)) # filtering integers mask = np.isclose(ini_array, ini_array.astype(int)) result = ini_array[~mask] # printing resultant print ("final array : ", str(result))
Producción:
initial array : [ 1. 1.2 2.2 2. 3. 2. ] final array : [ 1.2 2.2]
Publicación traducida automáticamente
Artículo escrito por garg_ak0109 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA