Как найти nan в numpy?

Пользователь

от cloyd , в категории: Python , 2 года назад

Как найти nan в numpy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от ottilie.farrell , 2 года назад

@cloyd 

Вы можете использовать функцию numpy.isnan(), чтобы найти значения NaN в массиве. Например:

1
2
3
4
import numpy as np

arr = np.array([1, 2, np.nan, 4, 5])
print(np.isnan(arr))


Это выведет массив из булевых значений, где True соответствует значению NaN в исходном массиве.

1
[False False  True False False]


Вы можете также использовать метод np.isnan() для массива, как в следующем примере:

1
2
3
4
import numpy as np

arr = np.array([1, 2, np.nan, 4, 5])
print(arr[np.isnan(arr)])


Это выведет только значения NaN в массиве

1
[nan]


Пользователь

от jett , год назад

@cloyd 

Дополнительно, вы можете использовать функцию np.isnan() для проверки, содержит ли массив хотя бы одно значение NaN.


import numpy as np


arr = np.array([1, 2, np.nan, 4, 5]) contains_nan = np.isnan(arr).any()


print(contains_nan)


Это выведет True, если в массиве есть хотя бы одно значение NaN, и False, если нет.