Метод isna
Метод isna применяется к Series и возвращает булеву маску (Series из True/False), где True указывает на пропущенное значение (NaN). Метод не принимает параметров и является удобным способом для обнаружения пропусков в данных.
Синтаксис
ser.isna()
Пример
Давайте создадим Series с пропусками и проверим, где находятся NaN:
import pandas as pd
import numpy as np
ser = pd.Series([1, 2, np.nan, 4, np.nan])
res = ser.isna()
print(res)
Результат выполнения кода:
0 False
1 False
2 True
3 False
4 True
dtype: bool
Пример
Метод isna можно использовать для фильтрации данных, оставляя только корректные значения:
import pandas as pd
import numpy as np
ser = pd.Series([5, np.nan, 10, np.nan, 15])
not_null = ser[~ser.isna()]
print(not_null)
Результат выполнения кода:
0 5.0
2 10.0
4 15.0
dtype: float64
Пример
Также метод isna работает с отсутствующими значениями, представленными как None в Python:
import pandas as pd
ser = pd.Series([1, None, 3, 4, None])
print(ser.isna())
Результат выполнения кода:
0 False
1 True
2 False
3 False
4 True
dtype: bool
Пример
С помощью isna можно посчитать общее количество пропусков в Series:
import pandas as pd
import numpy as np
ser = pd.Series([1, 2, np.nan, 4, np.nan])
count_nulls = ser.isna().sum()
print(count_nulls)
Результат выполнения кода:
2
Смотрите также
-
метод
notna,
который возвращает обратную маску (True для не-пропусков) -
метод
dropna,
который удаляет все строки с пропущенными значениями -
метод
fillna,
который заполняет пропуски указанным значением -
метод
interpolate,
который интерполирует пропущенные значения