我有一个如下所示的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']
答案 0 :(得分:1)
print(gdf.isna().any())
将给出输出,其中哪一列包含true
或false
Id False
text True
float False
geometry False
所以使用这个
print(gdf.columns[gdf.isna().any()].tolist())
输出:
['text']