Панды isna()против isnull().
Я предполагаю, что вы имеете в виду pandas.DataFrame.isna()против pandas.DataFrame.isnull(). Не путать с тем pandas.isnull(), что в отличие от двух выше не является методом класса DataFrame.
Эти два метода DataFrame сделать точно то же самое! Даже их документы идентичны. Вы даже можете подтвердить это в коде панд .
Но почему два метода с разными именами делают одно и то же?
Это потому, что DataFrames панд основаны на DataFrames R. В R naи nullдве разные вещи. Прочтите этот пост для получения дополнительной информации.
Однако в python pandas построен поверх numpy, который не имеет ниnanull значений, ни значений. Вместо этого numpy имеет NaNзначения (что означает «не число»). Следовательно, панды также используют NaNценности.
Короче говоря
Для обнаружения NaNзначений используется NumPy np.isnan().
Для определения NaNзначений панды использует либо .isna()или .isnull().
Эти NaNзначения унаследованы от того , что панды построены на вершине NumPy, в то время как имена двух функций происходят из DataFrames АиРа, чья структура и функциональность панд пытались имитировать.