Метод notna
Метод notna применяется к DataFrame
и возвращает таблицу того же размера, но с булевыми
значениями True и False. Значение
True ставится там, где элемент не является
пропущенным. Пропущенными считаются значения
NaN, None и NaT. Данный
метод является противоположностью метода
isna.
Метод не принимает параметров.
Синтаксис
df.notna()
Пример
Давайте проверим значения в таблице на не пропущенные:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a': [1, np.nan, 3],
'b': [np.nan, 5, 6]
})
res = df.notna()
print(res)
Результат выполнения кода:
a b
0 True False
1 False True
2 True True
Пример
Давайте отфильтруем строки таблицы, в которых
нет пропусков, с помощью метода notna
и метода all:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a': [1, 2, np.nan],
'b': [4, np.nan, 6],
'c': [7, 8, 9]
})
res = df[df.notna().all(axis=1)]
print(res)
Результат выполнения кода:
a b c
0 1.0 4.0 7
Пример
Давайте подсчитаем количество не пропущенных
значений в каждом столбце с помощью метода
notna и метода sum:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a': [1, np.nan, 3],
'b': [np.nan, 5, 6]
})
res = df.notna().sum()
print(res)
Результат выполнения кода:
a 2
b 2
dtype: int64
Пример
Давайте заменим пропущенные значения на 0,
а не пропущенные оставим без изменений:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a': [1, np.nan, 3],
'b': [np.nan, 5, 6]
})
res = df.where(df.notna(), 0)
print(res)
Результат выполнения кода:
a b
0 1.0 0.0
1 0.0 5.0
2 3.0 6.0
Смотрите также
-
метод
isna,
который проверяет значения на пропущенные -
метод
dropna,
который удаляет строки с пропусками -
метод
fillna,
который заменяет пропущенные значения -
метод
interpolate,
который интерполирует пропущенные значения