识别包含无值的熊猫列

时间:2019-01-09 05:20:55

标签: python pandas nonetype geopandas

我有一个如下所示的geopandas数据框gdf

   Id  text  float                           geometry
0   0  1.65   0.00  POINT (1173731.7407 5354616.9386)
1   0  None   2.20   POINT (1114084.319 5337803.2708)
2   0  2.25   6.55  POINT (1118876.2311 5307167.5724)
3   0     0   0.00  POINT (1179707.5312 5313710.8389)

如何识别包含None值的列?

我尝试使用以下列表理解没有成功:

import pandas as pd
import geopandas as gp

gdf = gp.read_file('/temp/myshapefile.shp')

s = [pd.isnull(col) for col in gdf.columns if True]

这将导致:

In [1]: s
Out[1]: [False, False, False, False]

在这种情况下,我想要的输出是:

['text']

1 个答案:

答案 0 :(得分:1)

print(gdf.isna().any())

将给出输出,其中哪一列包含truefalse

Id       False
text     True
float    False
geometry False

所以使用这个

print(gdf.columns[gdf.isna().any()].tolist())

输出:

['text']