У панд есть как isna()
и isnull()
. Обычно я использую isnull()
для обнаружения отсутствующих значений и никогда не встречал случая, поэтому мне пришлось использовать другое. Итак, когда использовать isna()
?
Pandas isna() и isnull(), в чем разница?
Ответ 1
isnull
является псевдонимом для isna
. Буквально в коде панд:
isnull = isna
Действительно:
>>> pd.isnull
<function isna at 0x7fb4c5cefc80>
Поэтому я бы рекомендовал использовать isna
.
Ответ 2
Документация для обоих версий буквально идентична.
pandas.isna(): https://pandas.pydata.org/pandas-docs/stable/generated/pandas.isna.html#pandas.isna
pandas.isnull(): https://pandas.pydata.org/pandas-docs/stable/generated/pandas.isnull.html#pandas.isnull
Здесь он даже говорит, что DataFrame.isnull является псевдонимом isna в разделе "См. Также".
pandas.DataFrame.isnull(): https://pandas-docs.github.io/pandas-docs-travis/generated/pandas.DataFrame.isnull.html#pandas.DataFrame.isnull
Следовательно, они должны быть такими же, как np.nan, np.NaN, np.NAN.
Ответ 3
Они оба одинаковы. Рекомендуется всегда использовать isna()
, а не isnull()
.
Легко вспомнить, что делает isna()
, потому что когда вы смотрите на метод numpy np.isnan()
, он проверяет значения NaN
. В пандах есть другие похожие имена методов, такие как dropna()
, fillna()
, которые обрабатывают пропущенные значения и всегда помогают легко запомнить.