Tengo una matriz con dos columnas en numpy. Por ejemplo:eliminando pares de elementos de las matrices numpy que son NaN (u otro valor) en Python
a = array([[1, 5, nan, 6],
[10, 6, 6, nan]])
a = transpose(a)
Quiero iterar eficientemente a través de las dos columnas, una [:, 0] y una [:, 1] y retire cualquier par que cumplen una determinada condición, en este caso si son NaN . La manera más obvia que puedo pensar es:
new_a = []
for val1, val2 in a:
if val2 == nan or val2 == nan:
new_a.append([val1, val2])
Pero eso parece torpe. ¿Cuál es la forma ridícula y pitón de hacer esto?
gracias.
+1: explicación súper clara y útil, y me gusta ~ np.isnan, ya que explica lo que estás haciendo. – tom10
¡Qué gran respuesta! – Tjorriemorrie