Pandas.DataFrame isna()方法和isnull()方法的区别

Python013

Pandas.DataFrame isna()方法和isnull()方法的区别,第1张

在对数据进行清洗的时候,一般都需要处理数据集中的空值。首先需要查看各列是否存在空值,然后就可以使用 .fillna() 来填补空值或者用.dropna()来丢弃数据表中包含空值的某些行或者列。

对于查看各列是否存在空值,有两种方法:Pandas.DataFrame isna()和isnull()。事实上,这两种方法并没有什么区别,他们做的是相同的事情。在R语言中, na 和 null 是两种不同的东西:

然而,在python中,pandas是构建在numpy之上的。在numpy中,既没有 na 也没有 null ,而只有 NaN (意思是“Not a Number”),因此,pandas也沿用NaN值。

简单的说:

原文来自:

https://datascience.stackexchange.com/questions/37878/difference-between-isna-and-isnull-in-pandas

1、在pandas中,我们采用了R语言中的惯用法,即将缺失值表示为NA,它表示不可用not available。

2、pandas项目中还在不断优化内部细节以更好处理缺失数据。

3、过滤掉缺失数据的办法有很多种。可以通过pandas.isnull或布尔索引的手工方法,但dropna可能会更实用一些。对于一个Series,dropna返回一个仅含非空数据和索引值的Series。

4、而对于DataFrame对象,可能希望丢弃全NA或含有NA的行或列。dropna默认丢弃任何含有缺失值的行。

5、最后通过一个常数调用fillna就会将缺失值替换为那个常数值,若是通过一个字典调用fillna,就可以实现对不同的列填充不同的值。这样就完成了。