【发布时间】:2019-02-04 18:45:35
【问题描述】:
Pandas 同时拥有isna() 和isnull()。我通常使用isnull() 来检测缺失值并且从未遇到过这种情况,因此我不得不使用其他方法。
那么,什么时候用isna()呢?
【问题讨论】:
Pandas 同时拥有isna() 和isnull()。我通常使用isnull() 来检测缺失值并且从未遇到过这种情况,因此我不得不使用其他方法。
那么,什么时候用isna()呢?
【问题讨论】:
他们都是一样的。作为最佳实践,始终更喜欢使用isna() 而不是isnull()。
很容易记住isna() 在做什么,因为当您查看numpy 方法np.isnan() 时,它会检查NaN 的值。在 pandas 中还有其他类似的方法名称,例如 dropna()、fillna(),它们可以处理缺失值,并且总是有助于轻松记住。
【讨论】:
isnull 是isna 的别名。字面意思是code source of pandas:
isnull = isna
确实:
>>> pd.isnull
<function isna at 0x7fb4c5cefc80>
所以我建议使用isna。
【讨论】:
isnull 是isna 的别名,我更倾向于isna。事实上,isna 似乎比isnull 更常用。
notna 和notnull?
isna,而且还应该弃用isnull。 isnull 对于空值返回 False 表示在设计和质量审查期间存在一些草过量。
两者的文档实际上是相同的。
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。
【讨论】: