繁体   English   中英

根据特定列或列中是否存在空值,从DataFrame中选择行

[英]Select rows from a DataFrame based on presence of null value in specific column or columns

我有一个导入的xls文件作为pandas数据帧,有两列包含坐标,我将用于将数据框与其他具有地理位置数据的数据框合并。 df.info()显示8859条记录,坐标列有'8835非null float64'记录。

我想用所有列记录来观察24行(我假设为空)以查看其他列(街道地址镇)之一是否不能用于手动添加这24条记录的坐标。 IE浏览器。 返回df。['Easting']中列的数据帧,其中isnull或NaN

我已经适应给出的方法在这里如下;

df.loc[df['Easting'] == NaN]

但是回到一个空数据帧(0行×24列),这对我来说毫无意义。 尝试使用Null或Non null不起作用,因为未定义这些值。 我错过了什么?

我认为你需要isnull来检查NaN值与boolean indexing

df[df['Easting'].isnull()]

文件

警告

必须要注意的是,在python(和numpy)中,nan的比较并不相同,但是没有。 请注意,Pandas / numpy使用np.nan!= np.nan的事实,并像np.nan一样处理None。

In [11]: None == None
Out[11]: True

In [12]: np.nan == np.nan
Out[12]: False

因此,与上面相比,标量相等比较与None / np.nan不提供有用的信息。

In [13]: df2['one'] == np.nan
Out[13]: 
a    False
b    False
c    False
d    False
e    False
f    False
g    False
h    False
Name: one, dtype: bool

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM