python - 在 pandas 中,如何选择包含 NaN 的行?

标签 python pandas numpy

假设我在df中有以下数据框:

a     | b     | c
------+-------+-------
5     | 2     | 4
NaN   | 6     | 8
5     | 9     | 0
3     | 7     | 1

如果我这样做df.loc[df['a'] == 5]它将正确返回第一行和第三行,但是如果我执行 df.loc[df['a'] == np.NaN]它什么也不返回。

我认为这更像是 python 的东西,而不是 pandas 的东西。如果我比较np.nan反对任何事情,甚至np.nan == np.nan将评估为 False ,所以问题是,我应该如何测试 np.nan

最佳答案

尝试像这样使用 isnull :

    import pandas as pd
    import numpy as np

    a=[1,2,3,np.nan,5,6,7]
    df = pd.DataFrame(a)

    df[df[0].isnull()]

关于python - 在 pandas 中,如何选择包含 NaN 的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39494988/

相关文章:

python - 在 Python 中获取列表的值

python - PySpark 无法正确读取 CSV

Python numpy.fft 改变步幅

python - 屏蔽将 nan 评估为 True 的 numpy 数组

python - Numpy 和 Ndarray 的外积

python - Scrapy在启动时不加载HttpProxyMiddleware

python - 从字符串中提取没有任何空格的数字

Python 函数 - 打印还是返回?

python Pandas : How to alter one column that is (complicatedly) based on another?

python - 如何使用正则表达式获取给定范围的匹配结果?